Bar code symbol reading system employing electronically-controlled raster-type laser scanner for reading bar code symbols during on hands-on and hands-free modes of operation

ABSTRACT

A bar code symbol reading system is disclosed comprising a hand-supportable bar code symbol reading device which embodies an electronically-controlled bar code symbol reading engine for producing a raster-type laser scanning pattern in either a hands-free or hands-on mode of operation for scanning 1-D and 2D bar code symbols. The electronically-controlled bar code symbol reading engine has (i) a high-speed/high-resolution raster scanning mode of operation, during which a high-speed, high-resolution raster-type scanning pattern is precisely generated under electronic control, and (ii) a high-speed/low-resolution raster scanning mode of operation during which a high-speed, low-resolution raster-type scanning pattern is precisely generated under electronic control. The electronically-controlled bar code symbol reading engine is induced into its high-speed/high-resolution raster scanning mode of operation when the hand-supportable bar code symbol reading device is removed from its support stand, and into its high-speed/low-resolution raster scanning mode when the hand-supportable bar code symbol reading device is placed into its support stand. The bar code symbol reading engine comprises a pair of mechanically-damped off-resonant laser beam scanning mechanisms that are arranged on a miniature optical bench and electronically-controlled by either a synchronously or synchronously driven drive circuit. When asynchronously driven, the raster laser scanning pattern floats slightly along the y-scanning direction to facilitate reading of 2-D bar code symbols during the hands-on mode of operation.

RELATED CASES

This Application is a Continuation of Ser. No. 09/996,079 filed Nov. 28,2001 now U.S. Pat. No. 6,742,709 which is a Continuation of Ser. No.09/154,020 filed Sep. 16, 1998; now abandoned; which is aContinuation-in-part of application Ser. No. 08/931,691 filed Sep. 16,1997, now U.S. Pat. No. 6,227,450; each said patent application isassigned to and commonly owned by Metrologic Instruments, Inc. ofBlackwood, N.J., and is incorporated herein by reference in itsentirety.

BACKGROUND OF THE INVENTION

1. Field of Invention

The present invention relates generally to laser scanning bar codesymbol reading systems, and more particularly to portable bar codesymbol reading systems capable of generating raster-type laser scanningpatterns having variable speed and resolution for reading various typesof 1-D and 2-D bar code symbols during hands-on and hands-free modes ofoperation.

2. Brief Description of the Prior Art

Bar code symbols have become widely used in many commercial environmentssuch as, for example, point-of-sale (POS) stations in retail stores andsupermarkets, inventory and document tracking, and diverse data controlapplications. To meet the growing demands of this recent technologicalinnovation, bar code symbol readers of various types have been developedfor scanning and decoding bar code symbol patterns and producing symbolcharacter data for use as input in automated data processing systems.

In general, laser scanning bar code symbol scanners are used for readingone-dimensional (1D) and two-dimensional (2-D) bar code symbols onproducts and packages for identification purposes. 2-D bar code symbolsare advantageous in that they have the capacity to encode asubstantially larger volume of data than 1D bar code symbols.Consequently, 2-D bar code symbols have enjoyed increasing popularityover recent years.

Many different techniques exist for scanning laser beams across objectsbearing 2-D bar code symbols. Examples of 2-D laser scanning mechanismsfor reading 2-D bar code symbols (e.g. the popular PDF 417 symbology)are described in U.S. Pat. Nos. 5,665,954, 5,691,834, and 5,550,367 andEPO Patent Application Publication No. EP 0 731 417 A2, incorporatedherein by reference.

While each of these prior art laser scanning mechanisms are capable ofproducing a raster-type laser scanning pattern, such prior arttechniques are unnecessarily complicated, expensive to manufacture, andgenerally do not enable precise speed/resolution control within theraster scanning pattern in a simple and practical manner required bynumerous 2-D scanning applications.

Thus, there is a great need in the bar code symbol reading art for a barcode symbol reading system and method which overcomes theabove-described shortcomings and drawbacks without compromising systemperformance and versatility.

OBJECTIVES AND SUMMARY OF THE INVENTION

Accordingly, it is a primary object of the present invention to provideimproved laser scanning bar code symbol reading system that avoids theshortcomings and drawbacks of prior art methods and technologies.

A further object of the present invention is to provide a bar codesymbol reading system comprising a hand-supportable bar code symbolreading device which embodies an electronically-controlled bar codesymbol reading engine for producing a raster-type laser scanning patternin either a hands-free or hands-on mode of operation for scanning 1-Dand 2D bar code symbols.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein a support stand is provided forsupporting the hand-supportable bar code symbol reading device above acounter-top or like surface during the hands-free mode of operation.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the hand-supportable bar code symbolreading device can be used as either a portable automatic hand-supportedbar code symbol reader in its hands-on mode of operation, or as anautomatic fixed projection-type bar code symbol reader in its hands-freemode of operation.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the electronically-controlled bar codesymbol reading engine has (i) a high-speed/high-resolution rasterscanning mode of operation during which a high-speed, high-resolutionraster-type scanning pattern is precisely generated under electroniccontrol, and (ii) a high-speed/low-resolution raster scanning mode ofoperation during which a high-speed, low-resolution raster-type scanningpattern is precisely generated under electronic control.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the electronically-controlled bar codesymbol reading engine is induced into its high-speed/high-resolutionraster scanning mode of operation when the hand-supportable bar codesymbol reading device is removed from its support stand, and into itshigh-speed/low-resolution raster scanning mode when the hand-supportablebar code symbol reading device is placed into its support stand.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein 2-D bar code symbols can be easily andreliably read in the hands-on mode of operation when theelectronically-controlled bar code symbol reading engine is induced intoits high-speed/high-resolution raster scanning mode of operation.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein 2-D bar code symbols can be easily andreliably read in the hands-free mode of operation when theelectronically-controlled bar code symbol reading engine is induced intoits high-speed/low-resolution raster scanning mode of operation as, forexample, during sheet reading applications.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein 2-D bar code symbols, containing numerouslines of information encoded in accordance with the PDF 147 symbology,can be read by the bar code symbol reading device and the symbolcharacter data representative thereof be automatically transmitted to abase unit over a one-way wireless radio-frequency (RF) link, andtherefrom, onto a host computer, whereupon the base unit an acousticalacknowledgment signal is automatically generated for reception by thehuman operator.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the hand-supportable bar code symbolreading device is provided with an IR-based object detection subsystemfor enabling automatic actuation of the raster-type bar code symbolreading engine of the present invention upon automatic detection ofobjects.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the hand-supportable bar code symbolreading device is provided with a manually-actuated trigger for enablingmanual actuation of the raster-type bar code symbol reading engine ofthe present invention.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the raster-type bar code symbol readingengine of the present invention can be electronically-reconfigured toproduce a single-line type laser scanning pattern upon manual actuationof an external switch provided on the exterior of the hand-supportablehousing of the bar code symbol reading device, or upon reading apredesigned mode-switching bar code symbol, for reading 1-D bar codesymbols.

A further object of the present invention is to provide such a bar codesymbol reading system, wherein the raster-type bar code symbol readingengine comprises a pair of mechanically-damped off-resonant laser beamscanning mechanisms that are arranged on a miniature optical bench andelectronically-controlled by a synchronously driven drive circuit.

A further object of the present invention is to provide such a bar codesymbol reading system, wherein the raster-type bar code symbol readingengine comprises a pair of mechanically-damped off-resonant laser beamscanning mechanisms that are arranged on a miniature optical bench andelectronically-controlled by an asynchronously driven drive circuit sothat the raster laser scanning pattern floats slightly along they-scanning direction to facilitate reading of 2-D bar code symbolsduring the hands-on mode of operation.

A further object of the present invention is to provide such a bar codesymbol reading system, wherein each such laser beam scanning mechanismcomprises an etched scanning element having a small flexible gap regionof closely-controlled dimensions disposed between an anchored baseportion and a laser beam deflecting portion.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the resonant frequency or oscillation ofeach laser beam deflecting portion relative to the anchored base portionis determined by the closely controlled dimensions of the flexible gapregion set during manufacture.

A further object of the present invention is to provide such a bar codesymbol reading system, wherein the resonant frequency of oscillation ofeach scanning element is tuned by adjusting the thickness and width ofthe flexible gap region.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the physical dimensions of the flexiblegap region are closely controlled by using chemical-etching techniquesduring manufacture.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein each etched scanning element ismanufactured by chemically etching a double-sided copper clad sheetconsisting of a polyamide base material laminated between ultra-thincooper sheets.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein a permanent magnet is mounted on the rearsurface of each laser beam deflecting portion, and a laser beamdeflecting element is mounted on the front surface of the laser beamdeflecting portion.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the base portion of each scanning elementis securely fixed to an optical bench and the laser beam deflectingportion is forced to oscillate substantially away from the naturalresonant frequency of the scanning element, by a reversibleelectromagnet disposed in close proximity to a permanent magnet mountedto the rear surface of the laser beam deflecting portion.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the natural harmonic (i.e., resonant)frequency of each laser beam deflecting portion about the anchored baseportion is mechanically-damped by adding a thin layer of flexible rubbermaterial to the gap region of the scanning element during manufacture,and the laser beam deflecting portion is forcibly driven by a reversibleelectromagnet operated at a forcing (i.e., driving) frequency tunedsubstantially away (i.e., off) from the natural resonant frequency ofthe laser beam deflecting portion.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the steady-state frequency of oscillationof the laser beam deflecting portion is determined by the frequency ofpolarity reversal of the electromagnet, which is electronicallycontrolled by the polarity of electrical current supplied to the inputterminals of the magnet coil of the reversible electromagnet.

Another object of the present invention is to provide such a bar codesymbol reading system with an electronically-controlled laser beamscanning mechanism, wherein the driving or forcing frequency of theelectromagnet thereof is selected to be at least ten percent off (i.e.,greater or less than) the natural resonant frequency of the laser beamdeflecting portion. Another object of the present invention is toprovide such a bar code symbol reading system, wherein the steady-statefrequency of oscillation can be set at the time of manufacture to be anyone of a very large range of values (e.g., 50–500 Hz) for use in bothlow-speed and high-speed laser scanning systems.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the laser beam scanning mechanism hasultra-low power consumption, and a low operating current.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the angular sweep of each laser beamdeflecting element is at about thirty (i.e., +/−15 degrees) measuredwith respect to the point of pivot about the anchored base portion ofthe scanning element of the present invention.

Another object of the present invention is to provide such a bar codesymbol reading system, wherein the scanning element and electromagnetare mounted within an ultra-compact housing having integrated stops fordelimiting the sweep that the scanning element is permitted to undergoduring operation.

A further object of the present invention is to provide such a systemwith one or more automatic (i.e., triggerless) hand-supportablelaser-based bar code symbol reading devices, each of which is capable ofautomatically transmitting data packets to its base unit after eachsuccessful reading of a bar code symbol.

A further object of the present invention is to provide such a bar codesymbol system, wherein the base unit is adapted to support thehand-supportable bar code symbol reading device in its automatichands-free mode of operation.

Another object of the present invention is to provide an improved barcode symbol reading system capable of generating high-speed raster-typelaser scanning patterns for reading one-dimensional and two-dimensionalbar code symbols in both hands-on and hands-off modes of operation.

A further object of the present invention is to provide such a bar codesymbol reading system in the form of a portable data (transaction)terminal capable of producing either a 1-D or 2-D laser scanning patternby manual selection, or bar code symbol programming, for reading 1-D or2-D bar code symbols, respectively.

A further object of the present invention is to provide such a bar codesymbol reading system in the form of a body-wearable transactionterminal capable of producing either a 1-D or 2-D laser scanning patternfor reading 1-D or 2-D bar code symbols, respectively.

A further object of the present invention is to provide such a bar codesymbol reading system, wherein the base unit contains a batteryrecharging device that automatically recharges batteries contained inthe hand-supportable device when the hand-supportable device issupported within the base unit.

It is another object of the present invention to provide such a bar codesymbol reading system with a mode of operation that permits the user toautomatically read one or more bar code symbols on an object in aconsecutive manner.

A further object of the present invention is to provide such a bar codesymbol reading system, wherein a plurality of automatic hand-supportablebar code symbol reading devices are used in conjunction with a pluralityof base units, each of which is mated to a particular bar code symbolreading device.

A further object is to provide such a bar code symbol reading device,wherein the automatic hand-supportable bar code (symbol) reading devicehas an infrared (IR) based object detection field which spatiallyencompasses at least a portion of its visible laser light scan fieldalong the operative scanning range of the device, thereby improving thelaser beam pointing efficiency of the device during the automatic barcode reading process of the present invention.

Another object of the present invention is to provide such an bar codesymbol reading system, wherein the base unit has a support frame thatsupports the hand-supportable housing of the device in a selectedmounting position, and permits complete gripping of the handle portionof the hand-supportable housing prior to removing it from the supportframe.

A further object of the present invention is to provide such anautomatic bar code symbol reading system, wherein the hand-supportablebar code reading device has a hands-on high-speed/high-resolution modeof raster scanning, and a hands-off high-speed/low-resolution mode ofraster scanning.

An even further object of the present invention is to provide anautomatic hand-supportable bar code reading device which preventsmultiple reading of the same bar code symbol due to the dwelling of thelaser scanning beam upon a bar code symbol for an extended period oftime.

It is a further object of the present invention to provide an automatichand-supportable bar code reading device having a control system whichhas a finite number of states through which the device may pass duringits automatic operation, in response to diverse conditions automaticallydetected within the object detection and scan fields of the device.

It is yet a further object of the present invention to provide aportable, fully automatic bar code symbol reading system which iscompact, simple to use and versatile.

Yet a further object of the present invention is to provide a novelmethod of reading bar code symbols using the automatic hand-supportablelaser scanning device of the present invention.

A further object of the present invention is to provide such a bar codesymbol reading system, wherein the laser scanning plane thereof extendsupwardly, downwardly, or laterally transverse to the pointing directionof the wearer's hand on which the device is mounted.

A further object of the present invention is to provide a point-of-salestation incorporating the automatic bar code symbol reading system ofthe present invention.

These and further objects of the present invention will become apparenthereinafter and in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

For a fuller understanding of the Objects of the Present Invention, theDetailed Description of the Illustrated Embodiments of the PresentInvention should be read in conjunction with the accompanying drawings,wherein:

FIG. 1 is a perspective view of the first illustrative embodiment of theautomatic bar code symbol reading device of the present invention, shownsupported within the scanner support stand portion of its matching baseunit, for automatic hands-free operation using IR-based objectdetection;

FIG. 1A is an elevated front view of the automatic bar code symbolreading device of FIG. 1, shown supported within the scanner supportstand portion of its base unit;

FIG. 1B is a plan view of the automatic bar code symbol reading systemshown in FIG. 1;

FIG. 1C is a bottom view of the automatic bar code symbol reading systemshown in FIG. 1;

FIG. 2 is a perspective view of the first illustrative embodiment of theautomatic hand supportable bar code symbol reading device of the presentinvention, shown being used in the automatic hands-on mode of operation;

FIG. 2A is an elevated, cross-sectional side view taken along thelongitudinal extent of the automatic bar code symbol reading device ofFIG. 2, showing the various components contained therein, including theautomatic bar code symbol reading engine of the present invention;

FIG. 2B is a cross-sectional plan view taken along line 2B—2B of FIG.2A, showing the various components contained therein;

FIG. 3 is an elevated side view of the first illustrative embodiment ofthe automatic bar code symbol reading device of the present invention,illustrating the spatial relationship between the object detection andscan fields of the device, and the long and short-ranges of programmedobject detection, bar code presence detection, and bar code symbolreading;

FIG. 3A is a plan view of the automatic bar code symbol reading devicetaken along line 3A—3A of FIG. 3;

FIG. 4A is a perspective view of the hand-supportable bar code symbolreader of the present invention of FIG. 1 shown being used to read a 2-DPDF-formatted bar code symbol in its hands-free (i.e., stand-supported)mode of operation;

FIG. 4A1 is a schematic representation of the high-speed/low-resolutionraster laser scanning pattern generated from the bar code symbol readingsystem of FIG. 1 when operated in its hands-free mode;

FIG. 4B is a perspective view of the hand-supportable bar code symbolreader of the present invention of FIG. 1, showing the automatichand-supportable bar code symbol reading device being removed from itscounter-top base unit;

FIG. 4C is a perspective view of the hand-supportable bar code symbolreader of the present invention of FIG. 1 shown being used to read a 2-DPDF-formatted bar code symbol in its hands-on mode of operation;

FIG. 4C1 is a schematic representation of the high-speed/high-resolutionraster laser scanning pattern generated from the bar code symbol readingsystem of FIG. 1 when operated in its hands-on mode;

FIG. 5A is a perspective view of the automatic laser-based bar codesymbol reading engine of the present invention, showing its miniature“match-box” size housing;

FIG. 5B is an elevated front view of the automatic bar code symbolreading engine of the present invention, showing the geometricalcharacteristics of its light transmission window;

FIG. 5C is an elevated rear view of the automatic bar code symbolreading engine of the present invention, showing its input/output signalport;

FIG. 5D is a perspective view of the automatic bar code symbol readingengine of the present invention, shown within the upper portion of theminiature match-box size housing removed from the lower housing portionthereof;

FIG. 5E is a perspective exploded view of the automatic bar code symbolreading engine of the present invention, showing the spatialrelationships among the printed circuit boards, the upper and lowerhousing portions, and the laser beam scanning optics thereof;

FIG. 5F is a perspective exploded view of an alternative embodiment ofthe automatic bar code symbol reading engine of the present invention,showing the spatial relationships among the printed circuit boards,including the printed board supporting the data packet transmissioncircuit of the present invention;

FIG. 6 is a schematic diagram of the laser beam scanning mechanism usedto realize the bar code symbol reader of the present invention, showingthe anchored base portion thereof mounted on a support structure of anoptical bench and the laser beam deflecting portion, extending from thebase portion, bearing a light beam deflecting element on its frontsurface and a magnetic element on its rear surface for interaction withan externally generated magnetic force field produced by a miniatureelectromagnet driven by an electrical pulse train having a frequencywhich is controlled by an electronic coil-drive signal generationcircuit;

FIG. 6A is a cross-sectional view of the laser beam scanning mechanismof FIG. 6, taken along line 6A—6A thereof;

FIG. 6B is a cross-sectional view of the resonant scanning mechanism ofFIG. 6, taken along line 6B—6B thereof;

FIG. 6C is a schematic diagram showing the angular tilt of the coil ofthe electromagnet shown in FIG. 6, in relation to the axis of symmetryof the coil;

FIG. 7 is a perspective view of a chemically-etched sheet ofdouble-sided copper-clad base material used to mass-manufacture thescanning element of the scanning mechanism of FIG. 6;

FIG. 7A is a cross-sectional view taken along line 7A—7A of FIG. 7showing a portion of the double-sided copper-clad base material that hasnot been chemically etched;

FIG. 7B is a cross-sectional view taken along line 7B—7B of FIG. 7showing a portion of the double-sided copper-clad base material that hasbeen chemically etched so as to form seven rows of three scanningelements therefrom;

FIG. 8 is a system block functional diagram of the automatic bar codesymbol reading system of the present invention, illustrating theprincipal components integrated with the control (sub)system thereof;

FIG. 8A is a schematic diagram of a first type of circuitry forproducing synchronized drive signals for the raster-type laser scanningmechanism shown in FIG. 5A;

FIG. 8B1 is a schematic representation of the output clock signal usedin the circuitry of FIG. 8A to synchronize the current drive signalsupplied to the electromagnetic coil of the X-axis laser beam scanningmodule employed in the bar code symbol reading engine of FIG. 5A;

FIG. 8B2 is a schematic representation of the drive current signalsupplied to the electromagnetic coil of the X-axis laser beam scanningmodule employed in the bar code symbol reading engine of FIG. 5A;

FIG. 8B3 is a schematic representation of the voltage signal used todrive the electromagnetic coil of the Y-axis laser beam scanning moduleemployed in the engine of FIG. 5A when a two-line raster scanningpattern is to be produced;

FIG. 8B4 is a schematic representation of the voltage signal used todrive the electromagnetic coil of the Y-axis laser beam scanning moduleemployed in the engine of FIG. 5A when a four-line raster scanningpattern is to be produced;

FIG. 8B5 is a schematic representation of the voltage signal used todrive the electromagnetic coil of the Y-axis laser beam scanning moduleemployed in the engine of FIG. 5A when a eight-line raster scanningpattern is to be produced;

FIG. 8B6 is an elevated side-view of a two-line raster laser scanningpattern produced from the bar code symbol reading engine shown in FIG.5A, when driven with the voltage signal of FIG. 8B3;

FIG. 8B7 is an elevated side-view of a four-line raster laser scanningpattern produced from the bar code symbol reading engine shown in FIG.5A, when driven with the voltage signal of FIG. 8B4;

FIG. 8B8 is an elevated side-view of a eight-line raster laser scanningpattern produced from the bar code symbol reading engine shown in FIG.5A, when driven with the voltage signal of FIG. 8B5;

FIGS. 8CA through 8CD collectively show a schematic diagram of a secondcircuit which can be used to produce a synchronized coil-drive signalsfor use by the raster-type laser scanning engine shown in FIG. 5A;

FIG. 8C1 is a schematic block diagram of the electronically-controlledpotentiometer employed in the coil-drive signal generation circuit ofFIGS. 8CA through 8CD;

FIG. 8C2 is a schematic diagram of the potentiometer employed in thecoil-drive signal generation circuit of FIGS. 8CA through 8CD;

FIG. 8D1 is a schematic representation showing how the direction selectsignal (U/D) is produced the Y-Direction Sweep Rate Control Circuitusing the x-coil drive voltage signal generated by the coil drivevoltage generation circuit of FIGS. 8CA through 8CD;

FIG. 8D2 is a schematic representation showing how, during thehigh-speed/low-resolution raster mode, the y-coil drive voltage signalis (V_(W)) is produced from the electronically-controlledpotentiometer/drive circuit using, as input, the direction select signal(U/D) generated from the Y-axis sweep rate control circuit and theincrement signal (INC) generated from the Y-axis step time controlcircuit employed in the Y-axis drive voltage generation circuit of FIGS.8CA through 8CD;

FIG. 8D3 is a schematic representation showing how, during thehigh-speed/high-resolution raster mode, the y-coil drive voltage signal(V_(W)) is produced from the electronically-controlledpotentiometer/drive circuit using, as input, the direction select signal(U/D) generated from the Y-axis sweep rate control circuit and theincrement signal (INC) generated from the Y-axis step time controlcircuit employed in the Y-axis drive voltage generation circuit of FIGS.8CA through 8CD;

FIG. 8E is a functional logic diagram of the system override signaldetection circuit in the Application Specific Integrated Circuit (ASIC)chip in the automatic bar code symbol reading engine of the presentinvention;

FIG. 8F is a functional logic diagram of the oscillator circuit in theASIC chip in the automatic bar code symbol reading engine of the presentinvention;

FIG. 8G is a timing diagram for the oscillator circuit of FIG. 8F;

FIG. 8H is a block functional diagram of the object detection circuit(i.e., system activation means) in the ASIC chip in the automatic barcode symbol reading engine of the present invention;

FIG. 8I is a functional logic diagram of the first control circuit (C₁)of the control system of the present invention;

FIG. 8J is a functional logic diagram of the clock divide circuit in thefirst control circuit of FIG. 8I;

FIG. 8K is table setting forth Boolean logic expressions for theenabling signals produced by the first control circuit C₁;

FIG. 8L is a functional block diagram of the analog to digital (A/D)signal conversion circuit in the ASIC chip in the bar code symbolreading engine of the present invention;

FIG. 8M is a functional logic diagram of the bar code symbol (Presence)detection circuit in the ASIC chip in the bar code symbol reading engineof the present invention;

FIG. 8N is a functional logic diagram of the clock divide circuit in thebar code symbol detection circuit of FIG. 8M;

FIG. 8O is a schematic representation of the time window andsubintervals maintained by the bar code symbol detection circuit duringthe bar code symbol detection process,

FIG. 8P is a functional logic diagram of the second control circuit (C₂)in the ASIC chip in the automatic bar code symbol reading engine of thepresent invention;

FIG. 8Q is Boolean logic table defining the functional relationshipsamong the input and output signals into and out from the second controlcircuit C₂ of FIG. 8R;

FIG. 8R is a schematic representation of the format of each data packettransmitted from the data packet transmission circuit of FIG. 9;

FIG. 9 is a functional block diagram of the data packet transmissioncircuit of the bar code symbol reading system of the present invention;

FIG. 10 is a schematic representation illustrating several groups ofdata packets transmitted from the bar code symbol reading device hereofin accordance with the principles of data packet transmission andreception scheme of the present invention;

FIG. 11 is a schematic representation of an exemplary set of groups ofdata packet pseudo randomly transmitted from neighboring bar code symbolreading devices, and received at one base unit in physical proximitytherewith;

FIG. 12 is a schematic representation of an exemplary set of datapackets simultaneously transmitted from three neighboring bar codesymbol reading devices of the present invention, and received at theassociated base units assigned thereto;

FIGS. 13A to 13C, taken together, show a high level flow chart of thecontrol process performed by the control subsystem of the bar codesymbol reading device, illustrating various modes of object detection,bar code presence detection and bar code symbol reading;

FIG. 14 is a state diagram illustrating the various states that theautomatic hand-supportable bar code symbol reading device of theillustrative embodiment may undergo during the course of its programmedoperation;

FIG. 15A is a perspective view of the scanner support stand housing ofthe countertop base unit of the present invention;

FIG. 15B is a perspective view of the base plate portion of thecountertop base unit of the present invention;

FIG. 15C is a perspective, partially broken away view of the assembledcountertop base unit of the present invention;

FIG. 16 is a functional block diagram of the data packet receiving andprocessing circuitry and the acknowledgment signal generating circuitryof the present invention realized on the printed circuit board in thebase unit shown in FIGS. 15A to 15C;

FIG. 16A is a functional block diagram of the radio receiver subcircuitof the data packet receiving circuit of FIG. 16;

FIG. 16B is a functional block diagram of the digitally controlledacoustical acknowledgment signal generating circuit of the presentinvention;

FIGS. 17 and 17A, taken together, set forth a flow chart illustratingthe steps undertaken during the control process carried out in the baseunit of FIG. 15C;

FIG. 18 is a perspective view of a second illustrative embodiment of theautomatic bar code symbol reading system of the present inventionrealized in the form of a portable Internet-based data transactionterminal, in which the laser beam scanning module of FIG. 5A isintegrated therewith for scanning 1-D and 2-D bar code symbols;

FIG. 19 is a perspective view of a perspective view of a thirdillustrative embodiment of the automatic bar code symbol reading systemof the present invention realized in the form of a body-wearableInternet-based data transaction terminal, in which the laser beamscanning engine (i.e. module) of FIG. 5A is integrated therewith forscanning 1-D and 2-D bar code symbols;

FIG. 20 is a perspective view of the four illustrative embodiment of thebar code symbol reading system of the present invention, shown supportedwithin the scanner support stand portion of its matching base unit, forautomatic hands-free operation using low-power laser-based objectdetection;

FIG. 21 is a perspective view of a fifth illustrative embodiment of thebar code symbol reading system of the present invention realized in theform of a portable Internet-based data transaction terminal, wherein alaser beam scanning module employing low-power object detection isintegrated therewith for scanning 1-D and 2-D bar code symbols;

FIG. 22 is a perspective view of a sixth illustrative embodiment of theautomatic bar code symbol reading system of the present inventionrealized in the form of a body-wearable Internet-based data transactionterminal, wherein a laser beam scanning engine (i.e. module) employinglow-power laser-based object detection is integrated therewith forscanning 1-D and 2-D bar code symbols;

FIG. 23 is a perspective view of the seventh illustrative embodiment ofthe bar code symbol reading system of the present invention, shown inthe form of a manually-actuated hand-held bar code symbol scanner;

FIG. 24 is a perspective view of a eighth illustrative embodiment of thebar code symbol reading system of the present invention realized in theform of a manually-actuated portable Internet-based data transactionterminal for scanning 1-D and 2-D bar code symbols; and

FIG. 25 is a perspective view of a perspective view of a ninthillustrative embodiment of the bar code symbol reading system of thepresent invention realized in the form of a manually-actuatedbody-wearable Internet-based data transaction terminal—for scanning 1-Dand 2-D bar code symbols.

DETAILED DESCRIPTION OF THE ILLUSTRATIVE EMBODIMENTS OF THE PRESENTINVENTION

The illustrative embodiments of the present invention will be describedwith reference to the figure drawings wherein like elements andstructures are indicated by like reference numbers.

In FIGS. 1, 18 and 19, first, second and third illustrative embodimentsof the bar code symbol reading system hereof are shown, wherein anautomatic IR-based object detection subsystem is provided in each ofthese systems for automatically activating the laser scanning mechanismthereof in response to automated IR-based object detection.

In FIGS. 20, 21 and 22, fourth, fifth and sixth illustrative embodimentsof the bar code symbol reading system hereof are shown, wherein alow-power laser-based object detection subsystem is provided in each ofthese systems for automatically activating the laser scanning mechanismthereof in response to automated laser-based object detection.

In FIGS. 23, 24 and 25, seventh, eighth and ninth illustrativeembodiments of the bar code symbol reading system hereof are shown,wherein a manually-actuated trigger-switch is provided on the housing ofeach of these systems for manually activating the laser scanningmechanism thereof.

Each of these illustrative embodiments of the present invention will bedescribed in great detail hereinafter so as to enable one with ordinaryskill in the art to practice the same in diverse user environments.

As shown in FIGS. 1 to 3A2, the first illustrative embodiment of the barcode symbol reading system of the present invention is realized in theform of a fully-automatic bar code symbol reading system 1 comprising anautomatic (i.e., triggerless) portable bar code (symbol) heading device2 operably associated with a base unit 3 having a scanner support stand4. As shown, bar code symbol reading device 2 is operably connected withits base unit 3 by way of a one way electromagnetic link 5 that ismomentarily created between bar code symbol reading device 2 and itsmated base unit 3 after the successful reading of each bar code symbolby the bar code symbol reading device. Operable interconnection betweenthe base unit and a host system (e.g., electronic cash register system,data collection device, etc.) 6 is achieved by a flexible multiwirecommunications cable 7 extending from the base unit and plugged directlyinto the said data-input communications port of the host computer system6. In the illustrative embodiment, electrical power from a low voltagedirect current (DC) power supply (not shown) is provided to the baseunit by way of a flexible power cable 8. Notably, this DC power supplycan be realized in host computer system 6 or as a separate DC powersupply adapter pluggable into a conventional 3-prong electrical socket.As will be described in greater detail hereinafter, a rechargeablebattery power supply unit is contained with bar code symbol readingdevice 2 in order to energize the electrical and electro-opticalcomponents therewithin.

As illustrated in FIGS. 1 through 1C, scanner support stand 4 isparticularly adapted for receiving and supporting portable bar codesymbol reading device 2 in a selected position without user support,thus providing a stationary, automatic hands-free mode of operation. Ingeneral, portable bar code reading device 2 includes an ultra-lightweight hand-supportable housing 9 having a contoured head portion 9A anda handle portion 9B. As will be described in greater detail hereinafter,head portion 9A encloses electro-optical components which are used togenerate and project a visible laser beam 10 through a lighttransmissive window 11 in housing head portion 9A, and to repeatedlyscan the projected laser beam across a scan field 12 defined external tothe hand-supportable housing.

As illustrated in FIGS. 1 through 1C, the scanner support stand portion3 includes a support frame which comprises a base portion 13A, a headportion support structure 13B, handle portion support structure 13C anda finger accommodating recess 13D. As shown, base portion 13A has alongitudinal extent and is adapted for selective positioning withrespect to a support surface, e.g., countertop surface, counter wallsurface, etc. Head portion support structure 13B is connected to baseportion 13A, for receiving and supporting the head portion of bar codesymbol reading device 2. Similarly, handle portion support structure 13Cis connected to base portion 13A, for receiving and supporting thehandle portion of the code symbol reading device. In order that theuser's hand can completely grasp the handle portion of thehand-supportable bar code reading device, (i.e., prior to removing itoff and away from the scanner support stand), finger accommodatingrecess 13D is disposed between head and handle portion supportstructures 13B and 13C and above base portion 13A of the support frame.In this way, finger accommodating recess 13D is laterally accessible sothat when the head and handle portions 9A and 9B are received within andsupported by head portion support structure and handle portion supportstructure, respectively, the fingers of a user's hand can be easilyinserted through finger accommodating recess 13D and completely encirclethe handle portion of the hand-supportable device.

As illustrated in FIGS. 2 through 2B in particular, head portion 9Acontinuously extends into contoured handle portion 9B at an obtuse angle^(α) which, in the illustrative embodiment, is about 146 degrees. It isunderstood, however, that in other embodiments obtuse angle ^(α) may bein the range of about 135 to about 180 degrees. As this ergonomichousing design is sculptured (i.e., form-fitted) to the human hand,automatic hands-on scanning is rendered as easy and effortless as wavingone's hand. Also, this ergonomic housing design eliminates the risks ofmusculoskeletal disorders, such as carpal tunnel syndrome, which canresult from repeated biomechanical stress commonly associated withpointing prior art gun-shaped scanners at bar code symbols, squeezing atrigger to activate the laser scanning beam, and then releasing thetrigger.

As illustrated in FIGS. 2 through 3A, the head portion of housing 9 haslight transmission aperture 11 formed in upper portion of front panel14A, to permit visible laser light to exit and enter the housing, aswill be described in greater detail hereinafter. The lower portion offront panel 14B is optically opaque except at optical wavelengths overthe infra-red (IR) region of the electromagnetic spectrums, as are allother surfaces of the hand supportable housing.

As best shown in FIGS. 2A and 2B, the automatic bar code symbol readingengine 18 of the present invention is securely mounted within the headportion of hand-supportable housing 9, while a printed circuit board 19and a rechargeable battery supply unit 20 are mounted within the handleportion of the hand-supportable housing. As will be described in greaterdetail hereinafter, the data packet transmission circuit of the presentinvention is realized on PC board 19 and is operably connected to barcode symbol reading engine 18 by way of a first flexible wire harness21, while electrical power is supplied from rechargeable battery 20 tothe data packet transmission circuit and the bar code symbol readingengine by way of a second flexible wire harness 22. As shown, atransmitting antenna 23 is operably connected to the data packettransmission circuit on PC board 19 and is mounted withinhand-supportable housing 9 for transmission of a data packet modulatedRF carrier signal. The structure and the functionalities of theautomatic bar code symbol reading engine 18 will be described in greaterdetail hereinafter with reference to FIGS. 5 to 14.

When using any of the bar code symbol reading devices of the presentinvention in commercial environments, such as retail stores, thewireless nature of the bar code symbol reader/base unit interfacepermits the operator thereof to accidentally or deliberately walk offwith the bar code symbol reading device. This could have seriousfinancial consequences preventing commercially successful utilization ofthe system in such operating environments. In the illustrativeembodiments hereof, this problem is solved by providing each bar codesymbol reader with an electrically-passive tuned resonant circuit 500(i.e., target), realized on an ultra-thin adhesive label 501 affixed toeither the exterior or interior of the hand supportable housing, isshown in FIG. 2A. The tuned resonant circuit 500 is identical to thoseused on products such is library books, compact discs, and othervaluable goods sold in retail outlets. When the bar code symbol readeris moved through the exit door of the store, the tuned resonant circuit500 absorbs energy from the magnetic field produced by magnetic fieldgeneration panels 502 and 503 installed of an electronic articlesurveillance system 504 installed at the store exit. When a bar codesymbol reader bearing tuned resonant circuit 500 is moved through themagnetic interrogation field produced by panels 502 and 503, the tunedresonant circuit absorbs power from the magnetic field and thecorresponding current fluctuation is detected by current sensingcircuitry which triggers an audible alarm 505, notifying storemanagement that the bar code symbol reader has been removed from thestore without authorization. Various types of targets, interrogationfield panels and electronic current sensing circuitry may be used topractice this aspect of the present invention. Suitable anti-theftdetection (or electronic article surveillance) systems for practicingthis aspect of the present invention can be found in U.S. Pat. No.4,870,391 to Cooper; U.S. Pat. No. 4,751,500 to Minasy, et al.; and U.S.Pat. No. 4,684,930 to Minasy, et al., which are hereby incorporated byreference in their entirety. This method provides an inexpensive way ofsecuring bar code symbol scanning devices using an electrically-passiveelement mounted on portable scanners within the system (or network), andthus is much less expensive and much simpler than providing a signalreceiver within the bar code symbol scanner itself, or using anelectrically-active security tag on the portable scanner.

Having described the first illustrative embodiment of the bar codesymbol reading system hereof, it is appropriate at this juncture todescribe in greater detail the laser scan and object detection fieldsthereof automatically generated from bar code symbol reading engine 18.

As illustrated in FIG. 2 in particular, the automatic bar code symbolreading device of FIG. 1 generates from its bar code symbol readingengine, two different types of fields external to its hand-supportablehousing. As explained below, these fields function to carry out a novelbar code symbol reading process according to the principles of thepresent invention. The first field, referred to as the “object detectionfield”, indicated in FIG. 2 by broken and dotted lines 15, is providedexternal to the housing for detecting energy reflected off an object(bearing a bar code symbol) located in the object detection field. Thesecond field, referred to as the “scan field”, has at least one laserbeam scanning plane 10, as shown in FIG. 2, and is provided external tothe housing for scanning a bar code symbol on the object in the objectdetection field. In the preferred embodiment, bar code symbol scanningis achieved using a visible laser beam which, after reflecting off thebar code symbol in the scan field, produces laser scan data that iscollected for the purpose of automatically detecting the bar code symboland subsequently reading (i.e., scanning and decoding) the same.

In general, detected energy reflected from an object during objectdetection can be optical radiation or acoustical energy, either sensibleor non-sensible by the user, and may be generated either from theautomatic bar code reading device or an external ambient source.However, as will be described in greater detail hereinafter, theprovision of such energy is preferably achieved by transmitting a widebeam of pulsed infrared (IR) light away from transmission aperture 11,in a direction substantially parallel to longitudinal axis 16 of thehand-supportable housing. In the preferred embodiment, the objectdetection field, from which such reflected energy is collected, isdesigned to have a narrowly diverging pencil-like geometry ofthree-dimensional volumetric expanse, which is spatially coincident withat least a portion of the transmitted infrared light beam. This featureof the present invention ensures that an object residing within theobject detection field will be illuminated by the infrared light beam,and that infrared light reflected therefrom will be directed generallytowards the transmission aperture of the housing where it can beautomatically detected to indicate the presence of the object within theobject detection field. In response, a visible laser beam isautomatically generated within the interior of the bar code symbolreading engine, projected through the light transmission aperture of thehousing and repeatedly scanned across the scan field, within which atleast a portion of the detected object lies. At least a portion of thescanned laser light beam will be scattered and reflected off the objectand directed back towards and through light transmissive window 11 forcollection and detection within the interior of the bar code symbolreading engine, and subsequently processed in a manner which will bedescribed in detail hereinafter.

To ensure that the user can quickly align the visible laser beam withthe bar code symbol on the detected object, the object detection fieldis designed to spatially encompass at least a portion of the scan fieldalong the operative scanning range of the device, as illustrated inFIGS. 3 and 3A, for the first illustrative embodiment of the presentinvention. This structural feature of the present invention provides theuser with an increased degree of control, as once an object is detected,minimal time will be required by the user to point the visible laserbeam towards the bar code symbol for scanning. In effect, the laser beampointing efficiency of the device is markedly improved during theautomatic bar code reading process, as it is significantly easier forthe user to align the laser beam across the bar code symbol upon objectdetection.

Hands-Off Mode of Operation with High-Speed and Low-Resolution RasterScanning Pattern

In FIG. 4A, the automatic bar code symbol reading device of the firstillustrative embodiment is shown being operated in its hands-off mode ofoperation. While the bar code symbol reader 2 is supported within itssupport stand 3, magnetic element 255 (or 256) within the support stand3 is automatically detected by a Hall-effect or like sensor 115 mountedin the bar code symbol reader 2, and automatically causing the bar codesymbol reading engine 18 therein to enter its high-speed/low-resolutionraster scanning mode. When operated in its high-speed/low-resolutionmode, the bar code symbol reading engine 18 automatically generates ahigh-speed/low-resolution laser scanning pattern as generally shown inFIG. 4A1.

As indicated in FIG. 4A1, the high-speed/low-resolution raster-typelaser scanning pattern of the illustrative embodiment is characterizedby: (i) a scanline speed of about 500 scanlines/second along the +x-axisdirection of the raster scanning pattern and about 500 scanlines/secondalong the −x-axis direction of the raster scanning pattern; (ii) a beamsweep of about minimally 60 degrees along the x-axis direction; (iii) abeam sweep of about minimally +/−10 degrees along the +/− y-axisdirection of the raster scanning pattern; and (iv) a resolution of about12 scanlines along the +y-axis direction of the raster pattern and about12 scanlines along the −y-axis direction of the raster scanning pattern.

When the bar code symbol reading engine 18 employs the “synchronous”type scanning element drive circuit shown in FIGS. 8A–8B5, ahigh-speed/low-resolution raster scanning pattern is repeatedlygenerated from bar code symbol reading device 2 with minimal movement ofthe raster scanline pattern relative to the scanner housing, duringscanning operations. When the bar code symbol reading engine 18 employsthe “asynchronous” type scanning element drive circuit shown in FIGS.8CA–8D3, a high-speed/low-resolution raster scanning pattern isrepeatedly generated from bar code symbol reading device 2 with a slightdegree of float or movement of the raster scanline pattern relative tothe scanner housing, during scanning operations. In either case, thehigh-speed/low-resolution mode of operation is ideally suited forreading 2-D bar code symbols printed on sheets of paper or like printmedia.

Hands-On Mode of Operation with High-Speed/High-Resolution RasterScanning Pattern

In FIGS. 4C, the automatic bar code symbol reading device of the firstillustrative embodiment is shown being operated in its hands-on mode ofoperation. As the bar code symbol reader 2 is picked up out of itssupport stand 3, magnetic element 255 (or 256) mounted within thesupport stand 3 is automatically detected as being absent by aHall-effect or like sensor 115 mounted in the bar code symbol reader 2,automatically causing the bar code symbol reading engine 18 therein toenter its high-speed/high-resolution raster scanning mode. When operatedin its high-speed/high-resolution mode, the bar code symbol readingengine 18 automatically generates a high-speed/high-resolution laserscanning pattern as generally shown in FIG. 4C1.

As indicated in FIG. 4C1, the high-speed/high-resolution laser scanningpattern of the illustrative embodiment is characterized by (i) ascanline speed of about 500 scanlines/second along the +x-axis directionof the raster scanning pattern and about 500 scanlines/second along the−x-axis direction of the raster scanning pattern, (ii) a beam sweep ofabout minimally 60 degrees along the x-axis direction, (iii) a beamsweep of about minimally +/−10 degrees along the +/− y-axis direction ofthe raster scanning pattern, and (iv) a resolution of about 100scanlines along the +y-axis direction of the raster pattern and about100 scanlines along the −y-axis direction of the raster scanningpattern.

When operated in its high-speed/high-resolution mode, the bar codesymbol reading engine 18 automatically generates ahigh-speed/high-resolution laser scanning pattern as generally shown inFIG. 4C1. As indicated in FIG. 4C1, the high-speed/low-resolution laserscanning pattern of the illustrative embodiment is characterized by (i)a scanline speed of about 500 scanlines/second along the +x-axisdirection of the raster scanning pattern and about 500 scanlines/secondalong the −x-axis direction of the raster scanning pattern, (ii) a beamsweep of about minimally 60 degrees along the x-axis direction, (iii) abeam sweep of about minimally +/− 10 degrees along the y-axis directionof the raster scanning pattern, and (iv) a resolution of about 100scanlines along the +y-axis direction of the raster pattern and about100 scanlines along the −y-axis direction of the raster scanningpattern.

When the bar code symbol reading engine 18 employs the “synchronous”type scanning element drive circuit shown in FIGS. 8A–8B5, ahigh-speed/high-resolution raster scanning pattern is repeatedlygenerated from bar code symbol reading device 2 with minimal movement ofthe raster scanline pattern relative to the scanner housing, duringscanning operations. When the bar code symbol reading engine 18 employsthe “asynchronous” type scanning element drive circuit shown in FIGS.8CA–8D3, a high-speed/high-resolution raster scanning pattern isrepeatedly generated from bar code symbol reading device 2 with a slightdegree of float or movement of the raster scanline pattern relative tothe scanner housing, during scanning operations, rendering it easier toread 2-D bar code symbols in the hands-on mode of operation.

Laser Beam Scanning Engzine of the Present Invention

As shown in FIGS. 5A to 5E, the automatic bar code symbol reading engine18 according to a first illustrative embodiment of the present inventioncontains a number of electronic, electro-optical and optical componentsarranged in a strategic manner within a miniature housing 85. In theillustrative embodiment, the miniature housing has smaller thanmatchbook size dimensions (e.g., a width along light transmission windowof 1.8″, a depth of 1.6″, and a height of 0.6″) and an interior volumeof about 1.7 cubic inches. As shown, housing 85 has an upper portion 85Aand a lower portion 85B. The underside 86 of the upper housing portion85A functions as an optical bench (i.e., platform) upon which themajority of optical and electro-optical components of the engine aremounted. The lower housing portion 85B supports two PC boards 87 and 88on which the circuits of FIG. 8 are realized using surface-mountcomponentry and like technology known in the art. In order to permit thelaser beam produced within housing 85 to exit the housing and to allowreflected laser light enter the same for detection, a first lighttransmission aperture 89 is provided in the front side panel of theupper housing portion 85A. In order to permit IR light to exit and enterthe housing, a second light transmission aperture 90 is formed in thefront side panel of the lower housing portion 85B, as shown. To permitflexible wire harness 21, 28 or 47 (between the bar code symbol readingengine and the data packet transmission circuit on the PC board) tointerconnect with the circuitry on PC board 88 by way of a conventionalconnector 91, an input/output aperture 92 is formed in the rear sidepanel of the lower housing portion 60B, as shown. With PC boards 87 and88 installed within the interior 93 of the lower housing portion, asshown in FIG. 5A, the upper housing is snap-fitted with the lowerhousing portion 85B by way of tabs 94 that engage against the interiorsurfaces of the side panels of the lower housing portion 85B. Additionaldetails regarding the optical layout and construction details of thepreferred embodiment of bar code reading engine 18, will be describedhereinafter.

As shown in FIG. 5D, a pair of miniature laser beam scanning modules 40Aand 40B, to be described in detail below, and visible laser diode (VLD)177 are configured onto optical bench 86 in order to form anultra-compact laser beam scanning device capable of selectivelyproducing a 1-D or 2-D (raster-type) laser scanning pattern under thecontrol of electronic circuitry 181. As shown in FIG. 5D, the opticalbench 86 allows the modules 440A and 440B to be mounted relative to eachother so that the scanning aperture of the first module is orientablealong the x-axis of the scanning field, while the scanning aperture ofsecond module is orientable along the y-axis thereof. In someapplications, it might be desired to provide the optical bench with beamfolding mirrors in order to fold the produced scanning beam in aparticular manner. In the illustrative embodiment, the x-axis directionscanning element undergoes a maximum angular excursion of about +/−30degrees about its non-deflected position, whereas the maximum angularexcursion for the y-direction scanning element is about +/−10 degreesabout the non-deflected position thereof.

As shown in greater detail in FIG. 6, each laser beam scanning mechanism405A and 405B has a base portion 402 mounted (i.e., anchored) on asupport structure 403 of an optical bench 404, and a laser beamdeflecting portion 405 extending from the base portion, with a flexiblegap portion 406 disposed therebetween. As shown, the laser beamdeflecting portion 405 ears a light deflecting element 407A (407B) onits front surface and a thin permanent magnet element 8 mounted on itsrear surface. Each light deflecting element 407A (407B) can be realizedin a number of different ways, namely: as a light reflective elementsuch as a mirror; as a light diffractive element such as a reflection ortransmission hologram (i.e., HOE); as a light refractive element such asa lens element; or as any other type of optical element capable ofdeflecting a laser beam along an optical path as the laser beamdeflecting portion 405 is oscillated about a fixed pivot point 409defined at the interface between the anchored base portion and flexiblegap portion of the scanning element. Light deflecting element 407 andmagnetic element 408 can be mounted to the scanning element using anadhesive, or other fastening technique (e.g., soldering) well known inthe art. In the illustrative embodiments disclosed herein, the laserbeam deflecting portion 405 of the x-axis scanning module is oscillatedabout its fixed pivot point by producing a reversible magnetic forcefield 410 (e.g., of about 260 Gauss) against the permanent magnet 408(e.g., 20/1000th thick) mounted on the rear surface of the laser beamdeflecting portion.

In the illustrative embodiment, the positive polarity of the permanentmagnetic field is directed away from the light deflecting element on thelaser beam deflecting portion 405. The interaction of magnetic fields ofopposite polarity produced by the permanent ferrite-type magnet 408 anda stationary magnetic field producing electromagnet 411 causes the laserbeam deflecting portion 405 to oscillate about its fixed pivot point 409at both its natural resonant frequency of oscillation, its harmonicmodes of oscillation, as well as at the driving or forcing frequency atwhich the polarity of the magnetic force field (produced byelectromagnet 411) reverses in response to amplitude variations in theelectrical pulse train (driving the electromagnetic coil) which occur ata frequency controlled by an electronic signal generation circuit 412.In the illustrative embodiment, the angular excursion of the laser beamalong the x-z scanning plane (defined in FIGS. 5A and 5D) is about +/−30degrees away from its non-deflected position, whereas the angularexcursion of the laser beam along the y-z scanning plane is about +/−10degrees away from its non-deflected position. The function of the lightdeflecting element 405 is to deflect a focused light beam 413 (producedby source 14) along a scanning path in response to oscillation of thelight beam deflecting portion 405 about the fixed pivot point 9, definedabove.

As shown in FIGS. 6 through 6B, each scanning element in the rasterscanning mechanism hereof has a laminated construction, wherein: theanchored base portion 402 and the laser beam portion 405, each consistof a thin layer of Kapton™ polyamide 416 sandwiched between a pair ofthin layers of cooper 417A and 417B, and 418A and 418B, respectively;and the flexible gap portion 406 consisting of the thin layer of Kapton™(polyamide) plastic material 18 and a thick layer ofmechanically-damping film material, such as screenable silicone rubber(General Electric SLA 7401S-D1), having a suitable duromater measure,e.g., Shore A40. Notably, the thin layer of polyamide in the anchoredbase portion 402, the flexible gap portion 405 and the laser beamdeflecting portion 406 is realized as a single unitary layer having auniform thickness across these individual portions of the scanningelement. The copper layers on opposite sides of the anchored baseportion, the flexible gap portion and the laser beam deflecting portionof the scanning element are discrete elements of uniform thicknessrealized by precisely-controlled chemical-etching of the copper andpolyamide layers during particular stages of the scanning elementfabrication process described below.

As shown in greater detail in FIG. 6, the x and y axis laser beamscanning mechanisms in bar code reading engine 18 are each realized onoptical bench 86 having planar dimensions. Magnetic-field producing coil(i.e., electromagnetic coil) 440A (440B) is supported upon a firstprojection (e.g., bracket) 427 which extends from the optical bench. Thescanning element of the present invention described above is mountedupon a second projection 428 which extends from the optical bench. Thepermanent magnet 408 is placed in close proximity with themagnetic-field producing coil 440A (440B), as shown in FIGS. 5D, 6 and6B. Visible laser diode (VLD) 177 produces an output laser beam 431which is directed towards laser beam deflecting portion 405 onto they-axis scanning element 405A and reflects onto the x-axis scanningelement 405B, and thus along the projection axis of the scanning module.The y-axis scanning element 405A is forced into oscillatory motion bydriving the electromagnetic coil 440A with a voltage signal having afrequency substantially off the resonant frequency of the y-axisscanning element (e.g. by at least 10%). Similarly, the y-axis scanningelement 405B is forced into oscillatory motion by driving theelectromagnetic coil 440B with a voltage signal also having a frequencysubstantially off the resonant frequency of the x-axis scanning element(e.g. by at least 10%).

In the illustrative embodiments disclosed herein, the x-axiselectromagnetic coil 440B is driven in a push-pull mode, wherein themagnetic polarity reverses periodically at a rate determined by theamplitude variation of the voltage signal applied across the terminalsof the electromagnetic coil 440B. A suitable voltage waveform fordriving the x-axis electromagnetic coil 440B in the laser beam scanningmechanism is shown in FIG. 8B2. As shown in FIG. 8A, an electroniccircuit 56 for producing this drive signal can be realized by aconventional push-pull current drive integrated circuit (IC) chip (556in FIG. 8A) connected to magnetic-field producing coil 440A in anelectrically-floating manner (i.e., not connected to electrical ground).As shown, a resistor-capacitor (RC) network 558 is connected to thepush-pull current drive IC 56 in order to set the scan speed (e.g., 500sweeps or lines per second). In the illustrative embodiments, the scanspeed of the x-axis laser scanning module can be adjusted between about50 to 700 lines/second by setting the RC time constant using an externalresistor R₁ and capacitor C₁, although it is understood, that in otherembodiments, the scan speed can be extended above and below this rangeas required by the particular application at hand.

In FIG. 5E, a second illustrative embodiment of raster-type laserscanning mechanism described above is shown realized within anultra-compact plastic housing 500, wherein electromagnetic coil 440A and440B, and the laser beam scanning mechanism of FIGS. 5D, 6, 6A and 6Bare mounted with holographic beam modifying optics of the kind disclosedin Applicants' copending application Ser. No. 09/071,512 entitled“DOE-Based Systems And Devices For Producing Laser Beams Having ModifiedBeam Characteristics”, filed May 1, 1998, and incorporated herein byreference. In all other respects, the bar code reading engine of FIG. 5Eis the same as that shown in FIG. 5A. As shown, plastic housing 500comprises a top plate 500A, side walls extending from the base plate,and a surface for mounting the anchorable base portions of the scanningelements 405A and 405B thereto. Housing 500 also is provided withrecesses in its side wall, within which the magnetic-field producingcoils 440A and 440B can be mounted in a press-fit manner. Whenassembled, the scanning elements 405A and 405B extend towards thecentral axes of the magnetic-field producing coils 440A and 440B,respectively, so that the permanent magnet 408A and 408B are closelypositioned adjacent to one end of the respective coils, while the otherends thereof, mounted on a support post in recess, are mounted thereto.The terminals of the magnetic-field producing coils can be passedthrough small holes drilled in side walls. Top plate 500A snaps onto thetop surface of the side walls of the housing, while the two pairs ofposts straddle the flexible gap portion 406A (406B) of the x and y axisscanning elements and function to delimit the maximum angular swingthereof if and when the raster scanning mechanism is subjected toexcessive external forces as might be experienced when the unit isdropped to the ground. In such an assembled configuration, the laserbeam scanning module has a scanning aperture 501, through which thelaser beam can be swept along either a 1-D or 2-D (raster) scanningpattern. Preferably, all of the components of the housing describedabove are fabricated using injection molding technology well known inthe art.

As illustrated in FIG. 5F, a third embodiment of the bar code symbolreading engine 18 is shown to further include PC board 45 mountedbetween PC boards 87 and 88, contained within match-box size housing 60.With data transmission circuit 121 realized on PC board 45, all that srequired to operate automatic bar code symbol reading engine 18 is asupply of low voltage D.C. power, which can be provided by attaching asubminiature battery pack onto the end portion, bottom portion, topportion, or side portion of the housing 60. The transmitting antenna 23,connected to PC board 45, is mounted onto the exterior of housing 60 andthe produced output from this embodiment of the bar code symbol readingengine is a RF carrier signal modulated by a serial data streamrepresentative of the data packet group produced by the data packettransmission circuit in response to the successful reading of a bar codesymbol. In alternative embodiments of the present invention, the batterypack may be physically incorporated within the interior of the housingmodified in dimensions to accommodate the dimensions of the batterysupply, and battery power recharging circuitry used in recharging thesame.

Fabrication of the Scanning Elements Employed in the Raster LaserScanning Mechanism Hereof

The preferred method of fabricating the flexible scanning elements ofthe present invention will be described with reference to FIGS. 7through 7B in the Drawings.

The first step of the fabrication method involves providing a sheet ofbase material 420, in which sheets of thin copper foil material 421A and421B are laminated onto both front and back surfaces of a 12′′×12′′sheet of Kapton™ polyamide film material 422 using a epoxy adhesive.Suitable copper-laminated base material (“base material”) can beobtained from Techetch, Inc. of Plymouth, Mass. The cross-sectionalnature of this base material is shown in FIG. 7.

Both sides of the 12″×12″ sheet of base material 420 are screen-printedwith a pattern of copper-protective ink (“photo-resist”). Thecopper-protective pattern is structured so that it covers those areas ofthe sheet where the copper elements associated with the anchorable baseportion 402 and the laser beam deflecting portion 405 of many scanningelements are to be formed on the polyamide layer in aspatially-registered manner, as shown in FIGS. 7 and 7B. Those areas notcovered by the copper-protective pattern (i.e., where the gap portionsof the scanning elements are to be formed and scanning element mountinghole 425) are susceptible to the copper-etchant to be used in asubsequent etching stage. After the copper-protective pattern isprinted, the sheet is exposed to the copper-etchant by dipping the sheetin a reservoir of the same. Thereafter, the chemically-etched sheet,having etched copper surfaces 423A and 423B, is rinsed in a conventionalmanner. At this stage of the fabrication process, the copper elementsassociated with the anchorable base portion and the laser beam portionof four-hundred (400) canning elements are formed on 12″×12″ sheet in aspatially-registered manner; also, the gap portions of the scanningelements made from polyamide material are also formed betweencorresponding base and laser beam deflecting portions.

The next stage of the fabrication process involves screen-printing apattern of polyamide-protective ink on the chemically-etched sheet. Thepolyamide-protective pattern is structured so that it covers those areasof the sheet where the polyamide gap portions 406 have been previouslyformed, as well as very thin strips or string-like elements (e.g.,called “stringers”) between the copper elements associated with theanchorable base portion and the laser beam portion of neighboringscanning elements. Those areas of exposed polyamide not covered by thepolyamide-protective pattern described above (e.g., scanning elementmounting hole 425) are susceptible to the polyamide-sensitive etchantthat is to be used in a subsequent etching stage. After thepolyamide-protective pattern is printed, the sheet is exposed to thepolyamide-etchant by dipping the partially-etched sheet in a reservoirof the same. Thereafter, the etched sheet is rinsed in a conventionalmanner. At this stage of the fabrication process, the polyamide elementsassociated with the gap portion of the four-hundred scanning elementsare formed on 12″×12″ sheets, along with the copper elements associatedwith the base portions and laser beam deflecting portions thereof. Eachscanning element is suspended with respect to its neighboring scanningelement by way of the formed “stringers” 424 which can easily be brokenby gently pulling a fabricated scanning element from the nested matrixof scanning elements formed in the etched copper-clad sheet describedabove.

While suspended within the nested matrix, a thin layer of GE silicone(Durometer of Share A40) of about 0.01 inch thick is screened onto asingle surface of the gap region of each scanning element.

Once fabricated in the manner described above, the permanent (ferrite)magnets 408 and light deflecting (mirror) elements 407 can be attachedto the laser beam deflecting portions of the etched scanning elementsusing CNC-based robotic machinery well known in the art. In addition,the completely fabricated scanning elements can then be mounted to theiroptical benches (or mounting brackets) using CNC-based machinery wellknown in the art.

Notably, while the above-described process involved treating singlesheets of base material, it is understood that alternative embodimentsof the present invention, a roll of base material can be used (insteadof sheets) and treated using a continuous version of the above-describedfabrication process.

Tuning the scanning element described above is relatively easy. It hasbeen determined that the natural resonant frequency of oscillation ofthe light beam deflecting portion 405 is functionally related to: thethickness of the layer of flexible material 416 (422); the physicaldimensions of the flexible gap portion 406; the total mass of the laserbeam deflecting portion, including the laser beam deflecting element(e.g., mirror) 407 and the permanent magnet 408. For a given permanentmagnet, mirror element and base material (e.g., double-side copper-cladpolyamide), the natural resonant frequency of the laser beam deflectingportion about the fixed pivot point 409 can be precisely controlled bycontrolling the physical dimensions of the flexible gap region 406during the copper etching stage of the scanning element fabricationprocess (i.e., printing the copper-protective and polyamide-protectivepattern). This technique enables tuning the scanning element over afairly broad range of operation. For a greater degree of tuning, itmight be desirable or necessary to use a different base material, inwhich the thickness of the polyamide layer is thicker (where a higherscanning frequency is required), or thinner (where a lower scanningfrequency is required).

While sophisticated mathematical models of the scanning element can becreated to assist in the design process of the scanning element hereof,it has been found that straight forward experimentation can be used todetermine the gap dimensions for a desired natural operating frequency.As the forced frequency of operation is the “operating frequency” of thescanning mechanism, the designer will start with the desired operatingfrequency (i.e., set by scanning speed requirements, bar code symbolresolution, signal processing limitations, etc.) and figure out what thenatural resonant frequency of the scanning element must be (e.g., atleast 10% away from the forced frequency of operation). Knowing theapproximate range of the natural resonant frequency of the scanningelement under design, the designer can then experiment (or model) in astraight forward manner to determine the physical dimensions required toattain the desired natural frequency of oscillation for a scanningelement fabricated from a particular base material.

Using the above-described fabrication technique, scanning elements havebeen fabricated with natural frequencies of operation within the rangeof about 50 Hz to about 250 Hz.

In the Table I below, the resonant frequencies are listed for a numberof different scanning elements (1) fabricated using base material havinga polyamide thickness of 0.001 inches, and 2.0 ounce double-sided coppercladding, and (2) having a laser beam deflecting portion (including amirror and permanent magnet) with a total mass of about 0.11 grams(i.e., where the ferrite magnet has a mass of 0.04 grams and mirrorhaving mass of 0.03 grams).

Double sided copper clad 2.0 oz Polyamide layer thickness 0.001 inchMass of Ferrite Magnet 0.04 grams Mass of Mirror Element 0.03 gramsTotal Mass of Light Beam 0.11 grams Deflecting Portion Gap Region Height0.160 inch Thickness of Silicon 0.01 inch Damping Film Layer Appliedover one side of Gap Region Durometer of Silicone Share A 40 DampingFilm Layer RESONANT FREQUENCY (Hz) GAP REGION WIDTH (Inch) 25 .065 26.5.060 28.0 .055 29.5 .050 31.0 .045 32.5 .040 34.0 .035 35.5 .030 37.0.025 38.5 .020 40.0 .015

In the Table II below, the resonant frequencies are listed for a numberof different scanning elements (1) fabricated using base material havinga polyamide thickness of 0.003 inches, and 2.0 ounce double-sided coppercladding, and (2) having a laser beam deflecting portion (including amirror and permanent magnet) with a total mass of about 0.11 grams(i.e., where the ferrite magnet has a mass of 0.04 grams and mirrorhaving mass of 0.03 grams).

Double sided copper clad 2.0 oz Polyamide layer thickness 0.003 inchMass of Ferrite Magnet 0.04 grams Mass of Mirror Element 0.03 gramsTotal Mass of Light Beam 0.11 grams Deflecting Portion Gap Region Height0.160 inch Thickness of Silicon 0.01 inch Damping Film Layer Appliedover one side of Gap Region Durometer of Silicone Share A 40 DampingFilm Layer RESONANT FREQUENCY (Hz) GAP REGION WIDTH (Inch) 75 .065 79.5.060 84 .055 88.5 .050 93 .045 97.5 .040 102 .035 106.5 .030 111 .025115.5 .020 120 .015 124.5 .010Bar Code Symbol Reading Engine of the Present Invention

As shown in FIG. 8, automatic bar code reading engine 18 is a systemcomprising a number of cooperating components, namely: a system overridesignal detection circuit 100 for detecting the production of a systemoverride signal and producing in the presence thereof control activationsignal A₀=1; a primary oscillator circuit 101 for producing a primaryclock signal CLK for use by the system override signal detection circuitand object detection circuit 107; a first RC timing network 102 forsetting the oscillation frequency of the primary oscillator circuit; anexternally mounted switch (i.e. ON/OFF switch) 103 for producing asystem override signal; first control means 104, realized as a firstcontrol circuit C₁, for performing localized system control functions; asecond RC timing network 105 for setting a timer T₁ in control circuitC₁; means (e.g., an object sensing circuit 106 and an object detectioncircuit 107) for producing a first activation control signal A₁=1 uponthe detection of an object bearing a bar code in at least a portion ofthe object detection field; a laser beam scanning mechanism 108 forproducing and scanning a visible laser beam across the bar code symbolon the detected object; photoreceiving circuit 109 for detecting laserlight reflected off the scanned bar code symbol and producing anelectrical signal D₁ indicative of the detected intensity; aanalog-to-digital (A/D) conversion circuit 110 for converting analogscan data signal D₁ into a corresponding digital scan data signal D₂; abar code presence detection circuit 111 for processing digital scan datasignal D₂ in order to automatically detect the digital data pattern of abar code symbol on the detected object and produce control activationsignal A₂=1; a third RC timing network 112 for setting a timer T_(BCD)in the bar code symbol detection circuit; second control means 113,realized as a second control circuit C₂, for performing local systemcontrol operations in response to the detection of the bar code symbol;third control means 114, realized as third control module C₃; secondcontrol circuit C₂ and third control module C₃; a raster mode selectioncircuit 115 for supplying raster mode selection signals to controlcircuits C₂ and C₃; timers T₂, T₃, and T₄ identified by referencenumerals 116, 117 and 118, respectively; a symbol decoding module 119for processing digital scan data signal D₂ so as to determine the datarepresented by the detected bar code symbol, generate symbol characterdata representative thereof, and produce activation control signal A₃for use by third control module C₃; a data packet synthesis module 120for synthesizing a group of formatted data packets for transmission toits mated base unit; and a data packet transmission circuit 121 fortransmitting the group of data packets synthesized by the data packetsynthesis module. As will be described in greater detail hereinafter,second control circuit C₂ is capable of “overriding” (i.e., inhibitand/or enable) first control circuit C₁, whereas third control module C₃is capable of overriding first and second control circuits C₁ and C₂,respectively. As shown in FIG. 8, such control override functions arecarried out by the generation of control override signals (i.e., C₂/C₁,C₃/C₂ and C₃/C₁) transmitted between respective control structures.Owing to the unique architecture of the control subsystem hereof, theautomatic bar code symbol reading device of the present invention iscapable of versatile performance and ultra-low power operation. Thestructure, function and advantages of this control subsystemarchitecture will become apparent hereinafter.

As shown in FIG. 8, electrical power is provided to the components ofthe bar code reading device by battery power supply unit (20) containedwithin the housing of the device. In the illustrative embodiment, thebattery power supply unit is realized as a power supply distributioncircuit 125 fed preferably by replaceable or rechargeable batteries 126.In the case of rechargeable batteries, a secondary inductive coil 127,bridge rectifier 128 and voltage regulation circuit 129 are containedwithin the hand-supportable housing, and configured as shown in FIG. 8.The function of second inductive coil 128 is to establish anelectromagnetic coupling with the primary inductive coil contained inthe base unit associated with the bar code reading device whenever thedevice is supported in the recharging portion of the base unit. In thisconfiguration, electrical power is inductively transferred from theprimary inductive coil in the base unit to secondary inductive coil 127,rectified by bridge rectifier 128, and filtered by voltage regulationcircuit 129 to provide a regulated DC power supply for rechargingrechargeable batteries 126. In addition, externally accessible ON/OFFpower switch 130 or functionally equivalent device (which in theillustrative embodiments hereof is realized by the same switch 103) isprovided in series between battery supply unit 126 and powerdistribution circuitry 125 so as to permit the user to selectivelyenergize and deenergize the device, as desired or required. Raster modeselection circuit 115 may include a manually actuatable switchexternally accessible to the housing, which the user can depress toselect the high-speed/low-resolution or high-speed/high-resolution modeof operation provided within the system. Alternatively, raster modeselection circuit 115 can be set to a particular mode setting upon thesymbol decoding module 119 decoding a particular bar code symbol whichhas been predesignated to activate a particular speed/resolution mode ofoperation, as the case may be.

As shown in FIG. 8A, the function of coil drive signal generationcircuit 181 is to produce drive signals for synchronously driving thelaser scanning modules 440A and 440B so that 1-D or 2-D raster-typescanning patterns are precisely and reliably produced under electroniccontrol. This circuitry 181 can be realized on a small printed circuit(PC) board attached to the optical bench 86 or elsewhere within thehousing of the bar code symbol reading engine or host computer device,as the case may be.

In the illustrative embodiment, push-pull drive IC 556 is used toproduce a current drive signal for the x-axis magnetic-field producingcoil 440A. The clock frequency of the clock signal 557 produced frompush-pull drive circuit 556 is set by external resistor/capacitatornetwork 558 (R1 and C1) connected to a 5 Volt power supply in a mannerwell known in the art. The output clock frequency shown in FIG. 8B1serves as a base or reference signal for the operation of circuit 554.As shown, the output clock signal is provided as input to a synchronous(4-bit) binary counter 560 which produces a plurality of output clocksignals having different lock rates (e.g., 2, 4, 8, etc.) In turn, theseoutput clock signals, along with a DC signal, are provided as inputsignals to a multi-channel data selector/multiplexer 561 (e.g., whosecontrol or gating signals are provided by the system controller 562 ofthe host system (e.g., hand-held bar code symbol reader, countertopscanner, vending machine, etc.) 553. The single output of thedata-selector/multiplexer 61 is provided as input to an inverter 564which is used to drive a transistor (Q1) 565 through a resistor R2connected to the base thereof, with the transistor emitter connected toelectrical ground. In turn, the collector and emitter junction of thetransistor 565 are connected in series with a current limiting resistorR3, a y-axis magnetic-field producing coil 440B and the 5 Volt powersupply.

In the illustrative embodiment, the system control module C₃ or C₂ isoperably connected to the symbol decoding module 134. Typically, thesymbol decoding module is realized as part of a programmedmicroprocessor capable of decoding 1-D and 2-D bar code symbols usingauto discrimination techniques and the like well known in the art.During decode processing, the symbol decoding module 134 carries out oneor more 2-D decoding algorithms (including PDF 417 algorithms). Suchdecoding algorithms may include scan pattern optimization control logic.According to such logic, if during the 2-D decoding process, a bar codesymbol is decoded, then the decoding module proceeds to determine howmany rows of scan data are contained in the 2-D bar code symbol. This isachieved by reading the “row” indication field in the decoded line ofscan data and determining the number of rows within the scanned 2-D barcode symbol. When this information is recovered by the symbol decodingmodule, it is then provided to the appropriate system control module C₃or C₂. In turn, the system control module uses this information togenerate a control signal for the data-selector/multiplexer 561. Thecontrol signal selects a signal (at the multiplexer's input) whichdrives the y-axis magnetic-field producing coil 440B in an manner thatthe 2-D bar code symbol is optimally scanned using a high-speedraster-type laser scanning pattern.

For example, in some applications, it will be desirable to initiallyscan using a raster-type 2-D scanning pattern. This if the symboldecoding module detects a 1-D bar code symbol, then the systemcontroller will automatically produce a control signal that causes themultiplexer 561 to select a DC-type drive voltage, thereby causing they-axis magnetic-field producing coil 440B to remain pinned down, and beprevented from deflecting the laser beam along the y-axis of thescanning beam. In other applications, it will be desirable to initiallyscan using a 1-D scanning pattern. In such cases, if the symbol decodingmodule 134 detects a 1-D bar code symbol, then the system control modulewill automatically continue producing a control signal that causes themultiplexer 561 to select a DC voltage, thereby causing the y-axismagnetic-field producing coil 440B to remain pinned down, and preventedfrom deflecting the laser beam along the y-axis of the scanning beam.

If the symbol decoding module 134 detects a “Post-Net” type 2-D bar codesymbol (e.g., using a 1-D scanning pattern), then the system controlmodule will produce a control signal that causes the multiplexer 561 toselect a coil drive signal that causes the y-axis magnetic-fieldproducing coil 440B to produce a 2-line raster scanning pattern. If thesymbol decoding module detects a “PDF or equivalent” type 2-D bar codesymbol, then the symbol decoder 134 determines how many rows of data inthe PDF code symbol. Based on the number of rows of data containedwithin the scanned 2-D bar code symbol, the system control module candynamically generate a suitable control signal that causes the y-axismagnetic-field producing coil to produce an optimal number of scan linesin the scanning pattern, related to the number of rows of data containedwithin the scanned code symbol.

If the symbol decoding module determines that the PDF symbol has between2–4 rows of data, then the system control module will produce a controlsignal that causes the multiplexer 561 to select a clock signal thatcauses the y-axis magnetic-field producing coil 440B to produce a 2-lineraster scanning pattern. If the symbol decoding module determines thatthe PDF symbol has between 5–10 rows of data, then the system controlmodule will produce a control signal that causes the multiplexer toselect a clock signal that causes the y-axis magnetic-field producingcoil 440B to produce a 4-line raster scanning pattern. If the symboldecoding module 134 determines that the PDF symbol has 11 or more rowsof data, then the system control module will produce a control signalthat causes the multiplexer to select a clock signal that causes they-axis magnetic-field producing coil 440B to produce a 4-line rasterscanning pattern. If the symbol decoding module 134 determines that thePDF symbol has 11 or more rows of data, then the system control modulewill produce a control signal that causes the multiplexer to select aclock signal that causes the y-axis magnetic-field producing coil 440Bto produce an 8-line raster scanning pattern.

During operation of the x and y coil drive circuitry shown in FIG. 8A,the push-pull drive IC 556 thereof produces a clock signal 557 as shown.Based on this clock signal, a current drive signal shown in FIG. 8B2 isproduced for driving the x-axis magnetic-field producing coil 440A. Asthe operation of the x-axis magnetic-field producing coil 440A isreversible (i.e., its magnetic polarity reverses in response to currentdirection reversal therethrough), the current direction is referenced toabout a zero milliap value. Each time the current drive signal changesdirection through windings of the x-axis magnetic-field producing coil440A, so too does the magnetic polarity of the magnetic-field producedthereby and thus the direction of deflection of the scanning elementalong the x-axis.

To prevent deflection of the laser beam along the y-axis, and thuscreate a 1-D scanning pattern, the system control module will select aDC voltage at multiplexer 561. The selected DC voltage will forward biasthe current drive transistor 565 so that a constant current flowsthrough y-axis magnetic-field producing coil 440B, pinning the scanningelement of the y-axis scanning module and preventing deflection of thelaser beam along the y-axis in response to the base clock signal 557shown in FIG. 8B6.

To produce a 2-D raster-type laser scanning pattern, the system controlmodule will select one of the voltage signals shown in FIGS. 8B3 through8B5 for driving current drive transistor 565 connected to the y-axismagnetic-field producing coil 440B. As illustrated in FIG. 8A, wheneverthe amplitude of the selected voltage signal is below a predeterminedthreshold (e.g., 0 Volts), then inverter 564 will produce an outputvoltage which forward biases the current drive transistor 565, causingelectrical current to flow through the y-axis magnetic-field producingcoil and a magnetic field are produced in response thereto. Under suchconditions, the y-axis magnetic-field producing coil and a magneticfield produced in response thereto. Under such conditions, the y-axismagnetic-field producing coil 440B deflects the laser beam long theyy-axis. When the amplitude of the selected voltage signal rises abovethe threshold level, the output of the inverter 564 decreases so thatthe current drive transistor 565 is no longer forward-biased. Thiscondition causes current flow through the y-axis magnetic-fieldproducing coil to cease and the magnetic field therefrom to collapse,thereby allowing the scanning element to deflect the laser beam I in theopposite direction.

When the selected control voltage changes polarity, the y-axis coil isonce again actively driven and the scanning element thereof deflected,causing the horizontally deflected laser beam to be deflected along they-axis direction. The number of horizontal scan lines produced each timethe laser beam is deflected along the y-axis direction depends on howslowly the amplitude of the selected control voltage (from themultiplexer 561) changes as the x-axis magnetic-field producing coil440A deflects the laser beam along the x-axis direction each time thecurrent drive signal shown in FIGS. 8B3 through 8B5 undergoes a signallevel transition from high to low.

Notably, the selected control voltage shown in FIG. 8B5 allows eighthorizontal scan lines to be created along the x-axis before it undergoesits signal level transition, which in effect triggers the repositioningof the laser beam along the start position of the y-axis. The finishposition along the y-axis depends on the time that the selected controlvoltage remains below the threshold voltage, as well as other factors(e.g., scanning aperture of the modules, host scanner, etc.)

Using the above-described principles of the present invention, clearlyit is possible to produce 2-D raster-type scanning patterns having anumber of horizontal scan lines that are optimally matched to the numberof rows of data within virtually any 2-D bar code symbol being scanned.

In accordance with the principles of the present invention, the symboldecoding module 134 can be programmed to collect information regarding(i) the number of rows in a scanned 2-D bar code symbol and (ii) thelength of the data rows. The system control module can then use the rownumber information to set the number of horizontal scan lines to beproduced in the scanning pattern, while the row length information canbe used to set the length of the scan lines by limiting the amplitude ofelectrical current through the x-axis magnetic-field producing coil440A.

As shown in FIG. 8A, such control can be achieved by the system controlmodule C₂ or C₃ sending a control signal 566 to push-pull drive circuit556, or an active element 567 provided in series with electromagneticcoil 440A for the purpose of actively controlling the electrical currentflowing therethrough.

In another embodiment of the present invention, it is possible for thesymbol decoding module 134 to collect information regarding (i) thenumber of rows in a scanned 2-D bar code symbol, (ii) the length of thedata rows, and (iii) count data representative of the distance of thesymbol in the scanning volume. The system control module can then usethe row number information to set the number of horizontal scan lines tobe produced in the scanning pattern, and the row length information andcount data to set the length of the horizontal scan lines (by limitingthe amplitude of electrical current through the x-axis magnetic-fieldproducing coil 440A by current control signal 566). By controlling suchscanning parameters, the overriding system control module can achievereal-time control over the aspect-ratio of the 2-D raster-type scanningpattern.

An advantage of such system functionalities will be to improve thevisibility of the scanned laser beam, optimize data collectionoperations, conserve electrical power and computational resources aboardthe system, as the laser beam will only be scanned over regions in spacewhere symbol data is likely present.

In FIGS. 3 and 3A, the raster-type laser scanning module of the presentinvention is shown being operated in its 1-D Scanning Mode. In thismode, a scan pattern is produced having a single horizontal scan line.In FIGS. 8B6 through 8B8, the laser scanning module is shown beingoperated in different variations of its 2-D Raster Scanning Mode, inwhich a raster-type scanning pattern is produced. In each of thesefigures, a different raster scanning pattern is shown being producedwith a different number of scan lines. Preferably, the particular numberof scan lines produced are automatically selected by the systemcontroller of the present invention, as described in great detail above.

Scanning mode selection can be realized in a number of different ways.One way would be to mount an external button on the housing of the barcode symbol reader into which the scanning module has been integrated.When this mode selection button is depressed, the reader automaticallyenters a particular scanning mode. Alternatively, scanning modeselection can be achieved by way of reading a predetermined bar codesymbol encoded to automatically induce a particular mode of operation.When a predetermined bar code symbol is read, the scanning moduleautomatically enters the scanning mode represented by the scanned barcode symbol.

In FIGS. 8CA through 8D3, a second circuit is disclosed for producingasychronized coil-drive signals that can be used by the raster-typelaser scanning engine of FIG. 5A to drive the electromagnetic coils 440Aand 440B thereof.

As shown in FIGS. 8CA through 8D3, the coil drive signal generationcircuit 181′ comprises a number of subcircuits, namely: a clock timingsignal producing circuit 600 for producing a master clock timing signal(e.g. f=4000 HZ) to be used within circuit 181′; anelectronically-controlled potentiometer circuit 601 for incrementing they-coil drive voltage signal (V_(W)) by (i) a predetermined voltageamount and (ii) along a direction of voltage movement (e.g. up or down);a transistor driver Q₂ 602 for converting the output drive voltagesignal V_(W) into a coil drive current signal for driving the y axiscoil 440B; a y-axis step/increment control circuit 603 for producing avoltage increment signal (INC) for supply to theelectronically-controlled potentiometer 604; a y-axissweep-rate/direction control circuit 604 for generating a directionselect/control signal (U/D) for supply to the electronically-controlledpotentiometer 601; a 12-bit synchronous counter circuit 605 for dividingthe master clock timing signal (f=4000 HZ) into (i) an appropriatetiming control signal for supply to the y-axis step/increment controlcircuit 603 during the raster mode detected by mode detection circuit607, and (ii) an appropriate timing control signal for supply to y-axissweep-rate/direction control circuit 604 during the raster mode detectedby mode detection circuit 607; a highspeed push-pull x-coil drive signalcircuit 606 for producing a drive voltage signal to the x-axis coil440A; an in/out-of-stand detection circuit 607 for detecting whether thebar code symbol reader 2 is disposed within its support stand 3, or isremoved therefrom and automatically supplying a control signal to they-axis step/increment control circuit 603 and y-axissweep-rate/direction control circuit 604 for enabling the selection ofappropriate timing control signals provided thereto by the synchronouscounter circuit 605.

The function of the in/out-of-stand detection circuit 607 is to detectwhether the bar code symbol reader 2 is disposed within its supportstand 3, or is removed therefrom and automatically supply a controlsignal to the y-axis step/increment control circuit 603 and y-axissweep-rate/direction control circuit 604 so as to enable the supply ofappropriate timing control signals (generated by the synchronous countercircuit 605) to the y-axis step/increment control circuit 603 and y-axissweep-rate/direction control circuit 604. In turn, these controlcircuits 603 and 604 generate signals INC and U/D respectively forprovision as input to the electronically-controlled potentiometer 601,as required by the detected raster mode set by the mode selectioncircuit 115 (e.g. Hall-effect switch or control signal from a controlmodule C₂ or C₃) and detected by in/out-of-stand detection circuit 607.

The function of the electronically-controlled potentiometer circuit 601is two-fold. The first function is to increment the y-coil drive voltagesignal (V_(W)) by a predetermined voltage amount (e.g. selected from upto 100 precisely quantified voltage levels) in response to apredetermined number of pulse transitions detected in the timing controlsignal (INC) within the potentiometer circuit 601. The second functionis to increment the y-coil drive voltage signal (V_(W)) along adirection of voltage movement in response to a change in pulse directiondetected in the timing control signal U/D within the potentiometercircuit 601. In the illustrative embodiment, potentiator circuit 601 isconstructed using IC (U3)x9C102 non-volatile digital potentiometer fromXicor, Inc.

The function of the y-axis step/increment control circuit 603 is toproduce voltage increment signal (INC) for supply to theelectronically-controlled potentiometer 601 so that the output voltageV_(W) is incremented and thus the y-axis scanning element 405Bincrementally deflected by the y-coil 440B during raster scanningoperations, thus sweeping the laser beam along the y-axis direction ofthe scanner. In its illustrative embodiment, circuit 603 is constructedusing a pair of NAND gates and a NOR gate configured as shown in FIGS.8CA through 8D3.

The function of the axis sweep-rate/direction control circuit 604 is toproduce voltage direction select/control signal (U/D) for supply to theelectronically-controlled potentiometer 601 so that the direction ofvoltage incrementation in V_(W) is periodically changed from UP to DOWNand vice versa, in a manner corresponding the UP and DOWN traversals ofthe rastered laser beam during scanning operations. In the illustrativeembodiment, circuit 604 is constructed using a pair of NAND gates and aNOR gate configured as shown in FIGS. 8CA through 8D3.

The function of the 12-bit synchronous counter circuit 605 is to dividethe master clock timing signal (f=4000 HZ) into first and second sets oftiming control signals for use during the raster mode (e.g.high-speed/low-resolution mode or high-speed/high-resolution mode)detected by in/out-of-stand detection circuit 607. The first set oftiming control signals produced by synchronous counter circuit 605 arefor controlling when the y-step/increment circuit 603 is to incrementthe output voltage V_(W) from the electronically-controlledpotentiometer circuit 601 by a precise (but quantified voltage amount).The second set of timing control signals produced by synchronous countercircuit 605 (e.g. 1 HZ signal for the high-speed/high-resolution rastermode and 8 HZ signal for the high-speed/low-resolution raster mode) arefor controlling when the y-axis sweep-rate/direction control circuit 604is to change the incrementation direction of the output voltage V_(W)from the electronically-controlled potentiometer circuit 601, and thusthe rate at which the laser beam is swept up and down along the y-axisdirection of the raster scanning field. In the illustrative embodiment,synchronous counter circuit 605 is constructed using three 4-bit counter(e.g. 74LS163 IC from Texas Instruments, Inc.) In FIG. 8D1, the x-coildrive voltage signal is schematically represented independent of they-coil drive voltage signal in order to emphasize that the x-coil drivevoltage signal and the y-coil drive voltage signal are not synchronizedin the preferred embodiment of x-v coil-drive signal generation circuit181′. In FIG. 8D2, the y-coil drive voltage signal produced by circuit181′ in the high-speed/low-resolution raster mode is schematicallydepicted in conjunction with the voltage incrementation directioncontrol signal (U/D) generated during this mode of scanner operation. InFIG. 8D3, the y-coil drive voltage signal produced by circuit 181′ inthe high-speed/high-resolution raster mode is schematically depicted inconjunction with the voltage incrementation direction control signal(U/D) generated during this mode of scanner operation. Notably, in eachsuch mode of scanner operation, the y-coil drive voltage signalincrements in a step-wise manner in the UP direction, and at the end of+y axis direction (corresponding to the top of a scanned bar code),remains at a fixed value for a number of clock cycles, and thendecrements in a step-wise manner in the DOWN direction, and at the endof −y axis direction (corresponding to the bottom of the scanned barcode), remains at a fixed value for a number of clock cycles, with theprocess repeating itself, again and again, as shown in FIGS. 8D2 and8D3. By virtue of such voltage characteristics, the y-coil 440Bcyclically drives the y-axis scanning element 405B back and forth alongthe y axis scanning direction, while the x-coil 440A cyclically drivesthe x-axis scanning element 405A back and forth along the x axisscanning direction, in a non-synchronous manner, enabling the entireraster scanning pattern to float up and down along the y-axis scanningdirection. Such pattern-floating action facilitates scanning the entireregion of a 2-D bar code symbol presented within the raster scanningfield generated by the bar code reading engine 18.

Having completed the description of x-y coil drive signal generationcircuit 118′, it is appropriate at this juncture to now resumedescription of the other subsystems and subcomponents within bar codesymbol reading engine 18.

As illustrated in FIG. 8, system override signal detection circuit 100,primary oscillator circuit 101, object detection circuit 107, firstcontrol circuit C₁, analog-to-digital conversion circuit 110, bar codesymbol detection circuit 111, and second control circuit C₂ are allrealized on a single Application Specific Integrated Circuit (ASIC) chip133 using microelectronic circuit fabrication techniques known in theart. In the illustrative embodiment, the ASIC chip and associatedcircuits for laser scanning and light detection and processingfunctions, are mounted on PC board 87. Symbol decoding module 119, datapacket synthesis module 120, timers T₂, T₃, T₄, and T₅ and third controlmodule C₃ are realized using a single programmable device, such as amicroprocessor having accessible program and buffer memory, and externaltiming circuitry, collectively depicted by reference numeral 134 in FIG.8. In the illustrative embodiment, these components and devices aremounted on PC board 88.

In the illustrative embodiment, when power switch 130 is engaged to itsON position, power from battery power unit 126 is provided to firstcontrol circuit C₁, system override detection circuit 100, primaryoscillator circuit 101 and IR object sensing circuit 106 and objectdetection circuit 107 so as to enable their operation, while onlybiasing voltages are provided to all other system components so thatthey are each initially disabled from operation. In accordance with theprinciples of the present invention, the consumption of electrical powerto all other system components occurs under the management of thecontrol architecture formed by the interaction of distributed controlcenters C₁, C₂ and C₃.

In the illustrative embodiments of the present invention, operation ofthe entire system can be disabled by activating ON/OFF switch 103mounted on the hand-supportable housing. As shown in FIG. 8E, systemoverride signal detection circuit 100 comprises AND gates 136 and 137,an invertor 138, an S-R latch circuit 139 and a logical driver 140,configured as shown. As illustrated in FIG. 8Q, the clock oscillatorsignal CLK (i.e., a periodic pulsed signal) is provided as one input ofAND gate 136, one input of AND gate 137, and the input of logic driver140. The system override signal S₀ from ON/OFF switch 103 is provided tothe input of invertor 138 and the second input of AND gate 136. Theoutput of invertor 138 is provided to the input of AND gate 137. Asshown, the output of AND gate 137 is provided to the RESET input of S-Rlatch 139, whereas the output of AND gate 136 is provided to the SETinput of S-R latch 139. The output of S-R latch 139 is activation signalA₀ provided to first control circuit C₁, whereas the output of logicdriver 140 is the driver signal S₀ DR which is used to drive (i.e.,provide the supply voltage for) the ON/OFF switch 103 mounted on thehand-supportable housing.

As shown in FIG. 8, primary clock oscillator circuit 101 supplies aperiodic pulsed signal to both the system override signal detectioncircuit and the object detection circuit. In the illustrativeembodiment, the primary oscillation circuit is designed to operate at alow frequency (e.g., about 1.0 Khz) and a very low duty cycle (e.g,about 1.0%). The “ON” time for the system override signal producingmeans and the IR object sensing circuit is proportional to the dutycycle of the primary oscillation circuit. This feature allows forminimal operating current when the bar code symbol reading engine is inthe object detection mode and also when the system override signalproducing device is activated (i.e., produces a system override signal).

As shown in FIG. 8R, primary oscillation circuit 101 comprises aSchmidtt trigger 142, invertors 143 and 144, and a NMOS Field-EffectTransistor (FET) 145. As shown, the output of trigger 142 is connectedto the inputs of both invertors 143 and 144. The output of invertor 143produces clock signal CLK which is provided to system override signaldetection circuit 100 and object detection circuit 107. The primaryoscillation circuit is connected to first RC network 102 which comprisesresistors R₁ and R₂, and capacitor C₁, configured as shown in FIG. 8R.The function of the RC network 102 is to establish the duty cycle andthe oscillation period of the primary oscillator circuit. As shown, twotime constants (i.e., loads) are established by the network usingcapacitor C₁ and resistors R₁ and R₂. The RC combination of R₁ and C₁establishes the period of the oscillator. The ratio of the R₂ to R₁provides the duty cycle of the oscillator. The value of R₂ isapproximately 100 times smaller than R₁ to establish a 1.0% duty cycle.As shown in the timing diagram of FIG. 8O, the clock signal CLK remainslow while the V₁ 1 signal ramps up. This ramp up time is the time ittakes for the capacitor C₁ to charge through R₁. The clock signal CLKthen goes HIGH for the shorter discharge time of the capacitor throughR₂. By adjusting the duty cycle (i.e., increasing or decreasing thevalue of resistor R₂), the sensitivity of the object detection circuitcan be tuned such that it activates consistently at a specified distancefrom the light transmission window of the bar code symbol readingdevice.

In accordance with the present invention, the purpose of objectdetection circuit 107 is to produce a first control activation signalA₁=1 upon determining that an object (e.g., product, document, etc.) ispresent within the object detection field of the bar code symbol readingdevice, and thus at least a portion of the scan field thereof. Asillustrated in FIG. 8, the object detection circuit is activated (i.e.,enabled) by enabling signal E₀ supplied from first control circuit C₁,and the object detection circuit provides the first control circuit C₁with first control activation signal A₁=1 when an object residing in thescan field is detected. In the illustrative embodiment, an “active”technique of automatic object detection is employed, although it isunderstood that “passive” techniques may be used with acceptableresults. As shown in FIG. 8, the object detection means of the systemcomprises two major subcomponents, namely object sensing circuit 106 andobject detection circuit 107, both of which are locally controlled bycontrol circuit C₁. In the illustrative embodiment, object sensingcircuit comprises an IR LED 148 driven by an IR transmitter drivecircuit 149, and an IR phototransistor (or photodiode) 150 activated byan IR receive biasing circuit 151. As shown in FIGS. 7D and 7F, thesecomponents are arranged and mounted on PC board 87 so as to provide anobject detection field that spatially encompasses the laser scanningplane, as described above. As shown in FIG. 8, the object detectioncircuit 107 produces an enable signal IR DR which is provided to the IRtransmitter drive circuit 149. The signal produced from IRphototransistor 151, identified as IR REC, is provided as input signalto the object detection circuit 107 for signal processing in a mannerwhich will be described in detail below. In the illustrative embodiment,infrared LED 148 generates a 900 nanometer signal that is pulsed at therate of the primary oscillation circuit 101 (e.g., 1.0 KHZ) when theobject detection circuit is enabled by enable signal E₀ produced fromthe first control circuit C₁. Preferably, the duty cycle of the primaryoscillation circuit 101 is less than 1.0% in order to keep the averagecurrent consumption very low.

Referring to FIG. 5F, it is noted that the pulsed optical signal fromLED 148 is transmitted so as to broadly illuminate the scan field. Whenan object is present within the object detection portion of the scanfield, a reflected optical pulse signal is produced and focused throughfocusing lens 153 onto photodiode 150. The function of photodiode 150 isto receive (i.e., sense) the reflected optical pulse signal and, inresponse thereto, produce a current signal IR REC.

As shown in FIG. 8H, produced current signal IR REC is provided as inputto the current-to-voltage amplifier (e.g., transconductance amplifier)155 in the object detection circuit, and is converted into a voltagesignal V₀. Within the object detection circuit 107, the infra-red LEDdrive signal IR DR is produced as the output of AND gate 157, whoseinputs are enabling signal E₀ supplied from the first control circuit C₁and the pulsed clock signal CLK supplied from the primary oscillationcircuit 101.

As shown in FIG. 8H, enabling signal E₀ is also provided tocurrent-to-voltage amplifier circuit 155, and the output voltage signalfrom AND gate 157 is provided as the second input to the synchronoustransmitter/receiver circuit 156. Notably, the output voltage signalfrom AND gate 157 and the output voltage signal V₀ from thecurrent-to-voltage amplifier correspond to the IR pulse signal trainstransmitted from and received by object sensing circuit 106. Thefunction of the synchronous transmitter/receiver circuit is tocyclically compare the output voltage signal from AND gate 157 and theoutput voltage signal V₀ from the current-to-voltage amplifier, and ifthese voltage signals synchronously match each other for a minimum ofthree (3) consecutive cycles of the primary oscillation circuit 101,then synchronous transmitter/receiver circuit 156 produces as output, afirst control activation signal A₁=1, indicative that an object ispresent in the scan field of the bar code symbol reading device.Conversely, whenever first control activation signal A₁=0 is produced,then this condition indicates that an object is not present in the scanfield.

Alternatively, the automatic bar code reading device of the presentinvention can be readily adapted to sense ultrasonic energy reflectedoff an object present within the scan field. In such an alternativeembodiment, object sensing circuit 106 is realized as an ultrasonicenergy transmitting/receiving mechanism. In the housing of the bar codereading engine, ultrasonic energy is generated and transmitted forwardlyinto the scan field. Then, ultrasonic energy reflected off an objectwithin the object detection field is detected adjacent to thetransmission window using an ultrasonic energy detector that produces ananalog electrical signal (i.e., UE REC) indicative of the detectedintensity of received ultrasonic energy. Preferably, a focusing elementis disposed in front of the energy detector in order to effectivelymaximize the collection of ultrasonic energy reflected off objects inthe scan field. In such instances, the focusing element essentiallydetermines the geometrical characteristics of the object detection fieldof the device. Consequently, the energy focusing (i.e., collecting)characteristics of the focusing element will be selected to provide anobject detection field which spatially encompasses at least a portion ofthe scan field. The electrical signal produced from theultrasonic-energy based object sensing circuit is provided to objectdetection circuit 107 for processing in the manner described above.Notably, the sensitivity (i.e., gain) of current-to-voltage amplifier155 is controlled by a sensitivity control signal E_(IRT) produced froma range control signal generating circuit (not shown).

In general, first control logic block C₁, provides the first level ofsystem control. This control circuit activates the object detectioncircuit 107 by generating enable signal E₀=1, it activates laser beamscanning circuit 108, photoreceiving circuit 109 and A/D conversioncircuit 110 by generating enable signal E₁=1, and it activates bar codesymbol detection circuit 111 by generating enable signal E₂=1. Inaddition, the first control circuit C₁ provides control lines andsignals in order to control these functions, and provides a systemoverride function for the low power standby mode of the bar code symbolreading engine. In the illustrative embodiment, the specific operationof first control circuit C₁ is dependent on the state of several sets ofinput signals (i.e., activation control signal A₀ and A₁, and overridesignals C₂/C₁, C₃/C₁₋₂ and C₃/C₁₋₂) and an internally generated digitaltimer signal B. A preferred logic implementation of the first controlcircuit C₁ is set forth in FIGS. 8I and 8J. The functional dependenciesamong the digital signals in this circuit are represented by the Booleanlogic expressions set forth in the Table of FIG. 8K, and therefore aresufficient to uniquely characterize the operation of first controlcircuit C₁.

As shown in FIG. 8I, first control circuit comprises a pair of logicinverters 161 and 162, an OR gate 163, a NAND gate 164, a NOR gate 165,an AND gate 166, and a digital timer circuit 167 which produces asoutput, a digital output signal B. As shown, digital timer circuit 167comprises a flip-flop circuit 170, a NOR gate 171, a clock dividecircuit 173, a comparator (i.e., differential) amplifier 172, and a NPNtransistor 174. As illustrated, activation control signal A₁ is providedto the CLK input of flip-flop 170 by way of inverter 161. The QNOToutput of the flip-flop is provided as one input to NOR gate 171,whereas the other input thereof is connected to the CLK input of clockdivide circuit 173 and the output of comparator amplifier 172. Theoutput of the NOR gate is connected to the base of transistor 174, whilethe emitter thereof is connected to the electrical ground and thecollector is connected to the negative input of comparator amplifier 172as well as the second timing network 105, in a manner similar to theinterconnection of first timing network 102 to primary oscillationcircuit 101. Also, the divided clock output (i.e., CLK/2048) producedfrom clock divide circuit 173 is provided to the CL input of flip-flop170. As shown, the Q output of flip-flop 170 is connected to the reset(RST) input of the clock divide circuit 173 as well as to one input ofOR gate 163, one input of NOR gate 165, and one input of AND gate 166.Notably, the Q output of the flip-flop is the digital output signal Bindicated in each of the Boolean expressions set forth in the Table ofFIG. 8K.

As shown in FIG. 81, enable signal A₀ from the system override signaldetection circuit 100 is provided as the second input to OR gate 163,and the output thereof is provided as input to NAND gate 164. Theoverride signal C₂/C₁ from second control circuit C₂ is provided as theinput to inverter 162, whereas the output thereof is provided as thesecond input to AND gate 166. The override signal C₃/C₁₋₁ from thirdcontrol module C₃ is provided as the second input to NAND gate 164,whereas the output thereof produces enable signal E₀ for activating theobject detection circuit 107. The override signal C₃/C₁₋₂ is provided tothe second input to NOR gate 165, whereas the output thereof producesenable signal E₁ for activating laser scanning and photoreceivingcircuits 108 and 109 and A/D conversion circuit 110. The output of ANDgate 166 produces enable signal E₂ for activating bar code symboldetection circuit 111.

Referring to FIG. 8I, the operation of digital timer circuit will bedescribed. The output voltage of comparator amplifier 172 keepstransistor 174 in its nonconducting state (i.e., OFF), via NOR gate 171,thus allowing the external RC network 105 to charge to capacity. Whencomparator input voltage Vx exceeds reference voltage VCC/2, thecomparator output voltage biases (i.e., switches ON) transistor 174 soas to begin discharging the RC timing network 105, until input voltageVx falls below reference voltage VCC/2 upon which the process repeats,thus generating a digital clock oscillation at the comparator output.The timing cycle of digital output signal B is initiated by a transitionon the activation control signal A₁ which toggles flip-flop 170. Thistoggling action sets the digital output signal B to its logical HIGHstate, resetting clock divide circuit 173 and starting the digital clockoscillator described above by toggling the Q output of flip-flop 170. Asshown in FIG. 8R, clock divide circuit 173 is constructed by cascadingeleven flip-flop circuits together in a conventional manner. Each stageof the clock divider circuit divides the input clock signal frequency bythe factor 2. Thus the clock divider circuit provides an overalldivision factor of 2048. When the clock output CLK/2048 toggles, theflip-flop circuit is cleared thus setting the digital signal B tological LOW until the next pulse of the activation control signal A₁.

As reflected in the Boolean expressions of FIG. 8K, the state of each ofthe enable signals E₀, E₁ and E₂ produced by the first control circuitC₁ is dependent on whether the bar code symbol reading system is in itsoverride state of operation. To better understand the operation ofcontrol circuit C₁, it is helpful to consider a few control strategiesperformed thereby.

In the override state of operation of the system, enable signal E₀ canbe unconditionally set to E₀=1 by the third control circuit C₃ settingoverride signal C₃/C₁=0. Under such conditions, the object detectioncircuit is enabled. Also, when the system override signal detectioncircuit is activated (i.e., A₀=1) or the laser scanning andphotoreceiving circuits activated (i.e., B=1) and override signalC₃/C₁−1=1, then enable signal E₀=1 and therefore the object detectioncircuit is automatically deactivated. The advantage of this controlstrategy is that it is generally not desirable to have both the laserscanning circuit 108 and photoreceiving circuit 109 and the objectsensing circuit 105 active at the same time, as the wavelength of theinfrared LED 148 typically falls within the optical input spectrum ofthe photoreceiving circuit 109. In addition, less power is consumed whenthe object detection circuit 107 is inactive (i.e., disabled).

As illustrated in FIG. 8, laser scanning circuit 108 comprises a lightsource 177 which, in general, may be any source of intense lightsuitably selected for maximizing the reflectivity from the objectbearing a bar code symbol. In the preferred embodiment, light source 177comprises a solid-state visible laser diode (VLD) which is driven by aconventional driver circuit 178. In the illustrative embodiment, thewavelength of visible laser light produced from the laser diode ispreferably about 670 nanometers. In order to repeatedly scan theproduced laser beam over the scan field (having a predetermined spatialextent in front the light transmission window), planar x and y axisscanning mirrors 407A (and 407B) are rapidly oscillated back and forthby x and y drive coils 440A and 440B, respectively, driven by the x-ycoil driver circuit 181 (or 181′) of the present invention, as shown anddescribed in detail hereinabove. To selectively activate both laserlight source 177 and motor 180, laser diode and scanning driver enablesignal E₁ is provided as input to driver circuits 178 and 181 (or 181′).When enable signal E₁ is a logical “high” level (i.e., E₁=1) a laserbeam is generated and projected through the light transmissive window.When the projected laser beam is repeatedly scanned across the scanfield in a rastered manner, and an optical scan data signal is therebyproduced off the object (and bar code) residing within the scan field.When laser diode and scanning driver enable signal E₁ is a logical “low”(i.e., E₁=0), there is no laser beam produced, projected, or scannedacross the scan field.

When a bar code symbol is present on the detected object at the time ofscanning, the user visually aligns the visible laser beam across the barcode symbol and incident laser light on the bar code will be scatteredand reflected. This scattering/reflection process produces a laser lightreturn signal of variable intensity which, represents a spatialvariation of light reflectivity characteristic of the pattern of barsand spaces comprising the bar code symbol. Photoreceiving circuit 109detects at least a portion of the reflected laser light of variableintensity and produces an analog scan data₁ signicative of the detectedlight ninth illustrative embodiment, photoreceiving circuit 109generally comprises a number of components, namely: a photoreceiver 185(e.g., a silicon photosensor) mounted onto PC board 87, as shown in FIG.5F, for detecting laser light focused by the light collection optics; afrequency selective filter 186A, mounted in front of photoreceiver 185,for transmitting thereto only optical radiation having wavelengths up toa small band above 670 nanometers; and optionally, laser lightcollection optics including, for example, a focusing lens or otheroptical element for focusing reflected laser light for subsequentdetection by photoreceiver 185.

In order to prevent optical radiation slightly below 670 nanometers frompassing through light transmission aperture 110 and entering thehousing, a light transmissive window realized as a plastic filter lens186B is installed over the light transmission aperture of the housing.This plastic filter lens has optical characteristics which transmit onlyoptical radiation from slightly below 670 nanometers. In this way, thecombination of plastic filter lens 186B at the transmission aperture andfrequency selective filter 186A before photoreceiver 185 cooperate toform a narrow band-pass optical filter having a center frequencyf_(c)=670 nanometers. By permitting only optical radiation associatedwith the visible laser beam to enter the housing, this opticalarrangement provides improved signal-to-noise ratio for detected scandata signals D₁.

In response to reflected laser light focused onto photoreceiver 185,photoreceiver 185 produces an analog electrical signal which isproportional to the intensity of the detected laser light. This analogsignal is subsequently amplified by preamplifier 187 to produce analogscan data signal D₁. In short, laser scanning circuit 108 andphotoreceiving circuit 109 cooperate to generate analog scan datasignals D₁ from the scan field, over time intervals specified by firstcontrol circuit C₁ during normal modes of operation, and by thirdcontrol module C₃ during “control override” modes of operation.

As illustrated in FIG. 8, analog scan data signal D₁ is provided asinput to A/D conversion circuit 110, shown in FIG. 8P. In a manner wellknown in the art, A/D conversion circuit 110 processes analog scan datasignal D₁ to provide a digital scan data signal D₂ which has a waveformthat resembles a pulse width modulated signal, where logical “1” signallevels represent spaces of the scanned bar code and logical “0” signallevels represent bars of the scanned bar code. A/D conversion circuit110 can be realized using any conventional A/D conversion techniqueswell known in the art. Digitized scan data signal D₂ is then provided asinput to bar code presence detection circuit 111 and symbol decodingmodule 119 for use in performing particular functions required duringthe bar code symbol reading process of the present invention.

The primary purpose of bar code presence detection circuit 111 is todetermine whether a bar code is present in or absent from the scanfield, over time intervals specified by first control circuit C₁ duringnormal modes of operation and by third control module C₃ during controloverride modes of operation. In the illustrative embodiment, bar codepresence detection circuit 111 indirectly detects the presence of a barcode in the scan field by detecting its bar code symbol “envelope”. Inthe illustrative embodiment, a bar code symbol envelope is deemedpresent in the scan field upon detecting a corresponding digital pulsesequence in digital signal D₂ that A/D conversion circuit 110 produceswhen photoreceiving circuit 109 detects laser light reflected off a barcode symbol scanned by the laser beam produced by laser beam scanningcircuit 108. This digital pulse sequence detection process is achievedby counting the number of digital pulse transitions (i.e., falling pulseedges) that occur in digital scan data signal D₂ within a predeterminedtime period T₁ clocked by the bar code symbol detection circuit.According to the laws of physics governing the laser scanning operation,the number of digital (pulse-width modulated) pulses detectable atphotoreceiver 185 during time period T₁ is a function of the distance ofthe bar code from the light transmission window 111 at the time ofscanning. Thus a bar code symbol scanned at 6″ from the lighttransmission window will produce a larger number of digital pulses(i.e., digital count) at photoreceiver 185 during time period T₁ thanwill the same bar code symbol scanned at 3″ from the light transmissionwindow.

As shown in FIG. 8M, bar code symbol presence detection circuit 111comprises a digital pulse transition counter 190 for counting digitalpulse transitions during time period T₁, and a digital clock circuit(i.e., T_(BCD) circuit) 191 for measuring (i.e., counting) time periodT_(BCD) and producing a count reset signal CNT RESET at the end of eachsuch time period, as shown in FIG. 8O. As shown in FIG. 8O, the functionof digital clock circuit 191 is to provide a time period T_(BCD) (i.e.,time window subdivision) within which the bar code symbol detectioncircuit attempts, repeatedly during time period T₁, to detect a bar codesymbol in the scan field. In the preferred embodiment, T_(BCD) is about0.1 seconds, whereas T₁ is about 1.0 second. As shown in FIG. 8O, inorder to establish such “bar code search” time subintervals within timeperiod T₁, the digital clock circuit 191 generates the first count resetpulse signal CNT RESET upon the detection of the first pulse transitionin digital scan data signal D₂. The effect of this reset signal is toclear or reset the digital pulse transition (falling edge) counter. Thenat the end of each time subinterval T_(BCD), digital clock signal 191generates another count reset pulse CNT RESET to reset the digital pulsetransition counter. If during time window T₁, a sufficient number ofpulse transitions in signal D₂ are counted over a subinterval T_(BCD),then either control activation signal A_(2L) or A_(2S) will be set to“1”. In response to the detection of this condition, second controlcircuit C₂ automatically enables control activation C₃ in order toinitiate a transition from the bar code symbol detection state ofoperation to the bar code symbol reading state of operation.

As shown in FIG. 8M, digital pulse transition counter 191 is formed bywiring together a series of three flip-flop circuits 192 to 194, suchthat each flip flop divides the clock signal frequency of the previousstage by a factor of 2. As indicated in the drawing of FIG. 8N, the Qoutput of flip flops 192 to 194 represent the binary digits 2, 4, 8, and16 respectively, of a binary number (i.e., counting) system. As shown,enable signal E₂ from first control circuit C₁ is provided as input toNOR gate 197, while the second input thereto is the counter reset signalCNT RESET provided from the digital counter circuit 191. In order toreset or clear the pulse transition counter circuit 190 upon thegeneration of each CNT RESET pulse, the output of the NOR gate 197 isconnected to the clear line (CL) of each flip flop 192 to 194, as shown.

As illustrated in FIG. 8M, digital clock circuit 191 comprises aflip-flop circuit 198, a NOR gate 199, a clock divide circuit 200, acomparator 201, and a NPN transistor 202. As illustrated, digital scandata signal D₂ is directly provided to the CLK input of flip-flop 198.The QNOT output of the flip-flop is provided as one input to NOR gate199, whereas the Q output thereof is connected to the CLK input of clockdivide circuit 200 and the second input of NOR gate 197. The other inputof NOR gate 199 is connected to the input line CLK of clock dividecircuit 200 and to the output of comparator 201, as shown. The output ofthe NOR gate is connected to the base of transistor 202, while theemitter thereof is connected to electrical ground and the collector isconnected to the negative input of comparator 201 as well as to thethird timing network 112, in a manner similar to the interconnection ofthe first timing network 102 to primary oscillation circuit 101. Asshown in FIG. 8N, clock divide circuit 200 is realized as series of fiveflip-flops 200A to 200E wired together so as to divide digital clockinput signal CLOCK by 32, and be resettable by pulsing reset line RESETin a conventional manner.

When an object is detected in the scan field, first control circuit C₁produces enable signal E₂=1 so as to enable digital pulse transitioncounter 190 for a time duration of T₁. As shown, the digital scan datasignal D₂ (representing the bars and spaces of the scanned bar code)drives the clock line of first flip flop 192, as well as the clock lineof flip flop 198 in the T_(BCD) timer circuit. The first pulsetransition in digital scan data signal D₂ starts digital timer circuit191. The production of each count reset pulse CNT RESET from digitaltimer circuit 191 automatically clears the digital pulse transitioncounter circuit 190, resetting it once again to count the number ofpulse transitions present in the incoming digital scan data signal D₂over a new time subinterval T_(BCD). The Q output corresponding to eightpulse transitions counted during time period T_(BCD), provides controlactivation signal A₂. When the presence of a bar code in the scan fieldis detected, second activation control signal A₂ is generated, thirdcontrol circuit C₃ is activated and second control circuit C₂ isoverridden by third control circuit C₃ through the transmission ofcontrol override signals (i.e., C₃/C₂ inhibit and C₃/C₁ enable signals)from the third control circuit C₃.

As illustrated in FIG. 8P, second control circuit C₂ is realized usinglogic circuitry consisting of NAND gates 205 to 208, invertors 209 and210, NOR gates 211 to 213, NAND gates 214 and 215, AND gate 216,configured together as shown. As shown, second control activationsignals A_(2S) and A_(2L) are provided to the first inputs of NAND gates214 and 215, respectively, whereas the outputs of NOR gates 211 and 212are provided to the second inputs of NAND gates 214 and 215respectively. The outputs of NAND gates 214 and 215 are provided to theinputs of AND gate 216 and the output thereof provides enable signal E₃for enabling third control module C₃.

As shown in FIG. 8P, the third control module C₃ provides overridesignals C₃/C₂₋₁ and C₃/C₂₋₂ to the first and second inputs of NAND gate205 and to the first input of NAND gate 207 and the first input of NANDgate 208, respectively. The range selection signal R produced from rangeselection circuit 115 is provided as input to NAND gate 206. As shown,output of NAND gate 205 is provided as the second input to NAND gate206. The output of NAND gate 206 is provided as the second input to NANDgate 207 and the second input to NAND gate 208. As shown in FIG. 8P, theoutput of NAND gate 207 is provided as an input to NOR gate 211 andinverter 209, whereas the output of NAND gate 208 is provided as inputsto NOR gates 211 and 212 and inverter 210. The output of inverter 209 isprovided as the other input to NOR gate 212 and one input to NOR gate213. The output of inverter 210 is provided as another input to NOR gate213, whereas the output thereof provides control override signal C₂/C₁.So configured, the combinational logic of the second control circuit C₂maps its input signals to its output signals in accordance with thelogic table of FIG. 8Q.

Upon entering the bar code symbol reading state, third control module C₃provides override control signal C₃/C₁ to first control circuit C₁ andsecond control circuit C₂. In response to control signal C₃/C₁, thefirst control circuit C₁ produces enable signal E₁=1 which enablesscanning circuit, 109 photo-receiving circuit 109 and A/D conversioncircuit 110. In response to control signal C₃/C₂, the second controlcircuit C₂ produces enable signal E₂=0, which disables bar code symboldetector circuit 111. Thereafter, third control module C₃ producesenable signal E₄ to enable symbol decoding module 119. In response tothe production of such signals, the symbol decoding module decodeprocesses, scan line by scan line, the stream of digitized scan datacontained in signal D₂ in an attempt to decode the detected bar codesymbol within the second predetermined time period T₂ established andmonitored by the third control module C₃. If the symbol decoding module119 successfully decodes the detected bar code symbol within time periodT₂, then symbol character data D₃ (representative of the decoded barcode symbol and typically in ASCII code format) is produced. Thereuponsymbol decoding module 119 produces and provides the third controlactivation signal A₃ to the third control module C₃ in order to induce atransition from the bar code symbol reading state to the data packettransmission state. In response thereto, two distinct events occur.First the third control module C₃ produces and provides enable signal E₅to data packet synthesis module 120. Secondly, symbol decoding module119 stores symbol character data D₃ in a memory buffer associated withdata packet synthesis module 120.

In the illustrated embodiment, symbol decoding module 119, data packetsynthesis module 120, and timers T₂, T₃, T₄ and T5 are each realizedusing programmed microprocessor and accessible memory 134. Similarly,third control module C₃ and the control functions which it performs atBlocks I to GG shown in FIGS. 13A and 13CC, are realized as aprogramming implementation using techniques well known in the art.

The function of data packet synthesis module 120 is to use the producedsymbol character data to synthesize a group of data packets forsubsequent transmission to its mated base unit by way of data packettransmission circuit 121.

For purposes of illustration, the case of transmitting data contained ina 1-D bar code symbol will be considered with reference to the datapacket format description shown in FIG. 8R. In particular, each datapacket in each data packet group comprises a number of data fields,namely: Start of Packet Field 220 for containing a digital codeindicating the beginning of the transmitted data packet; TransmitterIdentification Number Field 221 for containing a digital coderepresentative of the Transmitting Bar Code Symbol Reader; Data PacketGroup Number Field 222 for containing a digital code (i.e., a firstmodule number) assigned to each particular data packet group beingtransmitted; Data Packet Transmission No. Field 223 for containing adigital code (i.e., a second module number) assigned to each data packetin each data packet group being transmitted; Symbol Character Data Field224 for containing digital code representative of the symbol characterdata being transmitted to the base unit; Error Correction Code Field 225for containing a digital error correction code for use by the receivingbase unit to determine if error in data packet transmission hasoccurred; and End of Packet Field for 226 for containing a digital codeindicating the end of the transmitted data packet.

After the data packet synthesis module synthesizes a group of datapackets as described above, the third control module C₃ provides enablesignal E₇ to data packet transmission circuit 121. As illustrated inFIG. 9, the data packet transmission circuit comprises a carrier signalgeneration circuit 230, a carrier signal frequency modulation circuit231, a power amplifier 232, a matching filter 233, and a quarterwave(^(λ)/4) transmitting antenna element 234. The function of the carriersignal generation circuit 230 is to generate a carrier signal having afrequency in the RF region of the electromagnetic spectrum. In theillustrative embodiment, the carrier frequency is about 912 Mhz,although it is understood that this frequency may vary from oneembodiment of the present invention, to another embodiment thereof. Asthe carrier signal is being transmitted from transmitting antenna 234,frequency modulation circuitry 231 modulates the instantaneous frequencyof the carrier signal using the digital data sequence (i.e., digitaldata stream) 235 constituting the group of data packets synthesized bythe data packet synthesis module 120. The function of the poweramplifier is to amplify the power of the transmitted modulated carriersignal so that it may be received by a base unit of the presentinvention located within a predetermined data transmission range (e.g.,from about 0 to about 30 feet), illustrated in FIG. 2 in particular.

In general, each base unit of the present invention performs a number offunctions. First, the base unit receives the modulated carrier signaltransmitted from a hand-supportable bar code symbol reading devicewithin the data reception range of the base unit. Secondly, the baseunit demodulates the received carrier signal to recover the data packetmodulated thereunto during signal transmission. Thirdly, the base unitanalyzes each of the recovered data packets to determine whether thereceived carrier signal was transmitted from a hand-supportable bar codesymbol reading device preassigned to the receiving base unit. Fourthly,the base unit recovers the symbol character data from at least one datapacket in a transmitted group of data packets, and ascertaining thereliability of the recovered symbol character data. Fifthly, the baseunit generates an acoustical acknowledgement signal S_(ACK) that can beaudibly perceived by the operator of the transmitting bar code symbolreading device while located in the data reception range of the baseunit. Finally, the base unit transmits the received symbol characterdata to a host computer system or like device. Each of these functionswill be described in greater detail during the detailed description ofthe Main System Control Routine set forth in FIGS. 13A to 13CC.

In order to better understand the functions performed by the bar codesymbol reading device and base unit of the present invention, it will behelpful to first describe the principles underlying the datacommunication method of the present invention, and thereafter discussthe role that the base unit plays in carrying out this communicationmethod.

In a typical application of the present invention, a (resultant) systemof bar code symbol reading subsystems is installed in physical proximitywith each other. Typically each system is a point of sale (POS) stationincluding a host computer system interfaced with a base unit of thepresent invention and an automatic hand-supportable bar code symbolreading device preassigned to one of the base units. To register (i.e.,associate) each bar code symbol reading device with a preassigned baseunit, each bar code symbol reading device is preassigned a unique“Transmitter Identification Code” which is stored in a memory in theassigned base unit during a set-up procedure. In the illustrativeembodiment, the carrier frequency of the data packet transmitter in eachbar code symbol reading device is substantially the same for all barcode symbol reading devices in the resultant system. Also, the datapacket transmission range of each bar code symbol reading device will besubstantially greater than the distance between each bar code symbolreading device and a neighboring base unit to which the bar code symbolreading unit is not assigned. Consequently, under such operatingconditions, at any instance in time, any base station in the resultantsystem may simultaneously receive two or more packet modulated carriersignals which have been transmitted from two or more bar code symbolreading devices being used in the resultant system. These bar codesymbol reading devices may include the bar code symbol reading devicepreassigned to the particular base unit as well as neighboring bar codesymbol reading devices. Thus due to the principles of data packettransmission of present invention, there exists the possibility that anyparticular base unit may simultaneously receive two or more differentdata packets at any instant in time, thereby creating a “packetinterference” situation.

In order to ensure that each base unit in the resultant system iscapable of receiving at least one data packet from a data packet grouptransmitted by its preassigned bar code symbol reading device (i.e.,without risk of interference from neighboring bar code symbol readingdevice transmitters), the unique “data packet group” transmission schemeshown in FIG. 10 is employed. As shown, upon the successful reading of afirst bar code symbol and the production of its symbol character dataD₃, data packet synthesis module 120 aboard the bar code symbol readingdevice automatically produces a first (i.e., N=1) group of (three) datapackets, each having the packet format shown in FIG. 9. Thereafter, thedata packet transmission circuit 121 uses the digital data bit stream,representative of the synthesized data packet group, to modulate acarrier signal transmitted from the hand-supportable bar code symbolreading device.

In the illustrative example shown FIG. 10, only the second and thirddata packets of the group sent over the modulated carrier signal areshown as being received by the preassigned base unit. As shown in thisdrawing, the base unit transmits the recovered symbol character data D₃to its host computer system, upon receiving the second data packet inthe transmitted group of data packets. Thereafter, the base unitproduces an acoustical acknowledgement signal S_(ACK) of sufficientintensity that it can be easily heard by the operator of the bar codesymbol reading device that transmitted the received data packet. Thefunction of the acoustical acknowledgment signal is to provide theoperator with an audible acknowledgement that the symbol character dataD₃ (associated with the recently read bar code symbol) has been receivedby the base unit and transmitted to its host computer system forprocessing and or subsequent storage. Notably, while the third datapacket N₃ is also received by the base unit, the availableacknowledgement signal S_(ACK) and symbol character data transmission isnot produced as packet N₃ contains redundant information alreadyreceived by the second packet N₂ of the same group.

In the preferred embodiment, the pitch of the transmitted acousticalacknowledgement signal S_(ACK) is uniquely specified and assigned to aparticular bar code symbol reading unit. This way the operator of eachbar code symbol reading (sub)system can easily recognize (i.e., discern)the audible acoustical acknowledgement signal produced from the baseunit preassigned to his or her bar code symbol reading device. At thesame time, this pitch assignment scheme allows each operator to ignoreaudible acoustical acknowledgment signals produced from neighboring baseunits not mated with his or her portable bar code symbol reading device.If after reading a bar code symbol, the operator does not see the visual“good read” indication light on its device “flash” or “blink” andimmediately thereafter hear its preassigned acoustical acknowledgementsignal emanate from its base unit, then the operator is implicitlyinformed that the symbol character data of the read bar code symbol wasnot successfully received by the base unit. In response to such anevent, the operator simply rereads the bar code symbol and awaits tohear the acoustical acknowledgment signal emanating from the base unit.

Notably, it may even be desirable in some operating environments toproduce acoustical acknowledgement signals in the form of a uniqueseries of notes preassigned to a bar code symbol reading device and its“mated” base unit. The pitch or note sequence assigned to each matedbase unit and bar code symbol reading device can be stored in a memory(e.g., EPROM) realized in the base unit, and can be programmed at thetime of system set-up and modified as required. Preferably, each pitchand each note sequence is selected so that it can be readilydistinguished and recognized by the operator to which it is uniquelydirected.

Also shown in FIG. 10 is the case where the bar code symbol readingdevice reads a second bar code symbol and then transmits a second (N=2)group of data packets. However, due to interference only the third datapacket in the second transmitted group of data packets is received atthe respective base unit. Despite such group transmission errors (e.g.,due to channel corruption or non-radio transmissive obstructions), thebase unit as shown is nevertheless able to recover the transmittedsymbol character data. Upon receiving the third data packet, recoveringthe packaged symbol character data and transmitting the same to the hostcomputer system, the bar code symbol reading device generates anacoustical acknowledgement signal having a pitch or note sequence thatthe operator can hear and recognize as an indication that the datapacket reception was successful.

In FIGS. 11 and 12, the data packet transmission and reception scheme ofthe present invention is shown for the case of a three station system.In the best case scenario shown in FIG. 11, the group of data packetstransmitted from each bar code symbol reading device is transmitted at atime when there are no neighboring bar code symbol reading devicestransmitting data packets. This case will occur most frequently, as thetotal transmission times for each group of data packets is selected tobe substantially smaller than the random time durations lapsingnaturally between adjacent data packet transmissions from neighboringbar code symbol reading devices. This fact is illustrated in FIG. 11, inwhich (i) a group of data packets from bar code reading device No. 1 aretransmitted between adjacent groups of data packet transmitted from barcode symbol reading devices Nos. 2, 3 and 4 without the occurrence ofdata packet interference (i.e., collision). In most instances, the timedelay between consecutive groups of data packets transmitted from anyparticular bar code symbol reading device, will be sufficient to permita neighboring bar code symbol reading device to transmit at least onedata packet to its base unit without the occurrence of data packetinterference.

In accordance with the data transmission scheme of the presentinvention, data packet interference is minimized by the random presenceof interference-free time slots, during which a transmitted data packetcan be received at its respective base unit without neighboring packetinterference. However, the present invention employs additional measuresto further reduce the likelihood of data packet interference. Suchmeasures are best appreciated when considering a high-density datapacket transmission environment, in which a number of closely situatedneighboring bar code symbol readers are each attempting to transmit agroup of data packets to its preassigned base unit. In general, suchoperating conditions would present a worst case scenario for the datapacket transmission scheme of the present invention.

In the worst case scenario shown in FIG. 12, each of the fourneighboring bar code symbol reading devices is assumed to consecutivelyread two bar code symbols and simultaneously begin the transmission ofthe first data packet in the first group of data packets correspondingto the first read bar code symbol. As mentioned above, each data packetis formatted essentially the same way, has substantially the same packetwidth, and is transmitted on a carrier signal having a frequency whichis substantially the same as all other carrier signals transmittedthroughout the system. In accordance with the principles of the presentinvention, the data packet transmission circuit 121 in each bar codesymbol reading device is preprogrammed to transmit adjacent data packetswith a different “time delay”, as shown in FIG. 12. This condition isachieved throughout the resulting system by assigning a different Packettime Delay to each having a different Transmitter Identification Number,and then programming the bar code symbol reading device with thepreassigned Packet Time Delay parameter. As illustrated in FIG. 12, thevalue of the Packet Time Delay parameter programmed in each bar codesymbol reading device is selected so that, when the neighboring bar codesymbol reading devices simultaneously transmit groups of data packets,each base unit in the resulting system is capable of receiving at leastone data packet (in a group thereof) that has been transmitted from itspreassigned bar code symbol reading device. In general, the data packetdelay scheme of the present invention involves selecting and programmingthe Packet Time Delay parameter in each bar code symbol reading deviceso that each base unit is periodically provided a vacant time slot,during which one transmitted data packet in each group thereof can bereceived free of “data packet interference”, as shown in FIG. 12. Theadvantage of providing a packet time delay among the data packets ofeach transmitted group thereof is that rereading and retransmission ofbar code symbols is effectively minimized under the data packettransmission scheme of the present invention.

Having described the detailed structure and internal functions ofautomatic bar code symbol reading device of the present invention, theoperation of the control system thereof will now be described whilereferring to the system block diagram shown in FIG. 8 and control BlocksA to GG in FIGS. 13A to 13C.

Beginning at the START block of Main System Control Routine andproceeding to Block A of FIG. 13A, the bar code symbol reading system is“initialized”. This initialization step involves activating systemoverride circuit 100, first control circuit C₁ and oscillator circuit101. It also involves deactivating (i.e., disabling): (i) all externalsystem components except the range selection circuit 115 and OO/OFFswitch 103 (i.e., infrared sensing circuit 105, laser scanning circuit108, and photoreceiving circuit 109); (ii) all subcircuits aboard ASICchip 133 not associated with the system override circuit 100, such asobject detection circuit 107, A/D conversion circuitry 110, secondcontrol circuit C₂ and bar code presence detection circuit 111; and(iii) third control module 114, symbol decoding module 119 and datapacket synthesis module 120. In addition, all timers T₁, T₂, T₃, T₄, andT₅ are reset to t=0.

Proceeding to Block B in FIG. 13A, the first control circuit C₁ checksto determine whether it has received control activation signal A₀=1 fromsystem override detection circuit 100. If this signal is received, thenthe first control circuit C₁ returns to Block A. If control activationsignal A₀=1 is not received, then at Block C the first control circuitC₁ activates (i.e., enables) the object detection circuit by producingE₀. At Block D, optionally, the range of the object detection circuit isset by the user via external means, or other manner. At Block E, thefirst control circuit C₁ determines whether it has received controlactivation signal A₁=1, indicating that an object has been detectedwithin the selected range of the scan field. If this control activationsignal is not received, then at Block F the first control circuit C₁determines whether its has received control activation signal A₀=1. Ifthe first control circuit C, has received control activation signalA₀=1, then the control system returns to Block A in FIG. 13A, as shown.If the first control circuit C₁ has not received control activationsignal A₀=1, then the control system returns to Block E, as shown.

If at Block E the first control circuit C₁ has received first controlactivation signal A₁=1, then at Block G the first control circuit C₁ (i)deactivates (i.e., disables) the object sensing circuit and the objectdetection circuit using disabling signal E₀=0, (ii) activates (i.e.,enables) laser scanning circuit 108, photoreceiving circuit 109 and A/Dsignal conversion circuit 110 using enable signal E₁=1, (iii) activatesbar code detection circuit 111 and second control circuit C₂ usingenable signal E₂=1, and (iv) starts timer T₁ maintained in the firstcontrol circuit C₁. This permits the bar code symbol reading device tocollect and analyze scan data signals for the purpose of determiningwhether or not a bar code is within the scan field. If at Block H thesecond control circuit C₂ does not receive control activation signalA_(2S)=1 or A_(2L)=1 from the bar code detection circuit within timeperiod T₁, indicating that a bar code symbol is detected in the scanfield, then the control system returns to Block A thereby returningsystem control to the first control unit C₁, as shown in FIG. 13A. If atBlock H the bar code symbol detection circuit 111 provides the secondcontrol circuit C₂ with control activation signal A_(2S)=1 or A_(2L)=1,as the case may be, then second control circuit C₂ activates (i.e.,enables) third control module C₃ (i.e., microprocessor 134) using enablesignal E₃=1.

At Block J, the third control module C₃ polls (i.e., reads) theparameter R set by range selection circuit 115 and sets a range limitflag in the symbol decoding module 119. At Block K third control moduleC₃ activates the symbol decoding module 119 using enable signal E₄,resets and restarts timer T₂ permitting it to run for a secondpredetermined time period (e.g., 0<T₂<1 second), and resets and restartstimer T₃ permitting it to run for a third predetermined time period(e.g., 0<T₃<5 seconds). At Block L, the third control module checks todetermine whether control activation signal A₃=1 is received from thesymbol decoding module 119 within T₂=1 second, indicating that a barcode symbol has been successfully read (i.e., scanned and decoded)within the allotted time period. If control activation signal A₃=1 isnot received within the time period T₂=1 second, then at Block M thirdcontrol module C₃ checks to determine whether control activating signalA₂=1 is received. If a bar code symbol is not detected, then the controlsystem returns to Block A, causing a state transition from bar codereading to object detection. However, if at Block M the third controlmodule C₃ receives control activation signal A₂=1, indicating that a barcode once again is within the scan field, then at Block N the thirdcontrol module C₃ checks to determine whether time period T₃ haselapsed. If it has, then the control system returns to Block A. If,however, time period O≦T₃≦5 seconds has not elapsed, then at Block K thethird control module C₃ resets and restarts timer T₂ to run once againfor a time period O≦T₂≦1 second, while T₃ continues to run. In essence,this provides the device at least another opportunity to read a bar codepresent within the scan field when the control system is at controlBlock L. During typical bar code reading applications, the controlsystem may progress through the control loop defined by Blocks K-L-M-N-Kseveral times before a bar code symbol in the scan field is read withinthe time period allotted by timer T₃.

Upon receiving control activation signal A₃=1 from symbol decodingmodule 119, indicative that a bar code symbol has been successfullyread, the control system proceeds to Block O in FIG. 13B. At this stageof the system control process, the third control module C₃ continuesactivation of laser scanning circuit 108, photoreceiving circuit 109,and A/D conversion circuit 110, while deactivating symbol decodingmodule 119 and commencing activation of data packet synthesis module120. While the laser beam is continuously scanned across the scan field,the operations at Blocks P to V described below, are carried out in ahigh speed manner under the orchestration of control module C₃.

As indicated at Block P, data packet synthesis module 120 first sets thePacket Number to “1”, and increments the Packet Group Number from theprevious number. Preferably, the data packet synthesis module keepstrack of (i.e., manages) the “Packet Number” using a first modulo-Ncounter realized by programmable microprocessor 134, while it managesthe “Packet Group Number” using a second modulo-M counter also realizedby programmed microprocessor 134. In the illustrative embodiment, thefirst modulo counter has a cyclical count range of N=2 (i.e., 0, 1, 2,0, 1, 2, . . . ), whereas the second modulo counter has a cyclical countrange of M=10 (i.e., 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, . . . ). AtBlock Q, the data packet synthesis module synthesizes or constructs adata packet having a packet format as shown in FIG. 9, i.e., consistingof symbol character data, a Transmitter Identification Number, a PacketNumber, a Packet Group Number, check character, and Packet Start and End(i.e., framing) Characters. After the data packet has been formed andthe digital data sequence constituting the same is buffered, the thirdcontrol module C₃ activates at Block R the data packet transmissioncircuit. Thereafter at Block S, the data packet synthesis module outputsthe buffered digital data sequence (of the first synthesized data packetof the group) to the data packet transmission circuit, which uses thedigital data sequence to modulate the frequency of the carrier signal asit is being transmitted from the bar code symbol reading device, to itsmated base unit, as described hereinabove, and then automaticallydeactivates itself to conserve power.

At Block T, the third control module C₃ determines whether the PacketNumber counted by the first module counter is less than “3”. If thePacket Number of the recently transmitted data packet is less than “3”,indicative that at most only two data packets in a specific group havebeen transmitted, then at Block U the data packet synthesis module 120increments the Packet Number by +1. At Block V, the third control modulethen waits for a time delay T₅ to lapse prior to the control systemreturning to Block Q, as shown in FIG. 13B. Notably, the occurrence oftime delay T₅ causes a delay in transmission of the next data packet inthe data packet group. As illustrated in FIG. 12, the duration of timedelay T₅ is a function of the (last two digits of the) TransmitterNumber of the current data packet group, and thus is a function of thebar code symbol reading device transmitting symbol character data to itsmated base unit. For the case of three data packet groups, time delay T₅will occur between the transmission of the first and second data packetsin a packet group and between the transmission of the second and thirddata packets in the same packet group.

Returning to Block Q, the data packet synthesis module synthesizes orconstructs the second data packet in the same data packet group. Afterthe second data packet has been formed and the digital data sequenceconstituting the same is buffered, the third control module C₃reactivates at Block R the data packet transmission circuit. Thereafterat Block S, the data packet synthesis module outputs the buffereddigital data sequence (of the second synthesized data packet) to thedata packet transmission circuit, which uses the digital data sequenceto modulate the frequency of the carrier signal as it is beingtransmitted from the bar code symbol reading device, to its mated baseunit, and thereafter automatically deactivates itself. When at Block Tthird control module C₃ determines that the Packet Number is equal to“3”, the control system advances to Block W in FIG. 13C.

At Block W in FIG. 13C, the third control module C₃ continues activationof laser scanning circuit 108 photoreceiving circuit 109, and A/Dconversion circuit 110 using control override signals C₃/C₁, anddeactivates symbol decoding module 119, data packet synthesis module 120and the data packet transmission circuit 121 using disable signals E₄=0,E₅=0 and E₆=0, respectively. Then at Block X the third control module C₃determines whether control activation signal A₁=1, indicating that anobject is present in the scan field. If this control activation signalis not provided to the third control module C₃, then the control systemreturns to Block A, as shown. If control activation signal A₁=1 isreceived, then at Block Y the third control module C₃ reactivates thebar code symbol detection circuit using override signal C₃/C₂, andresets and restarts timer T₃ to start running over its predeterminedtime period, i.e., 0<T₃<5 seconds, and resets and restart timer T₄ for apredetermined time period 0<T₄<3 seconds.

At Block Z in FIG. 13C, the third control module C₃ then determineswhether control activation signal A₂=1 is produced from the bar codesymbol detection circuit 111 within time period T₄, indicating that abar code symbol is present in the scan field during this time period. Ifthis signal is not produced within time period T₄, then at Block AA thethird control module C₃ deactivates the bar code symbol detectioncircuit using override signal C₃/C₂, and reactivates the bar code symboldecoding module 119 using enable signal E₄=1. At Block BB, the thirdcontrol module C₃ resets and restarts timer T₂ to run over itspredetermined time period, i.e., 0<T₂<1 second. At Block CC the thirdcontrol module C₃ determines whether control activation signal A₃=1 isproduced by the symbol decoding module within time period T₂, indicatingthat the detected bar code symbol has been successfully decoded withinthis time period. If this control activation signal is not producedwithin time period T₂, then at Block DD the third control module C₃determines whether control activation signal A₂=1 is being produced fromthe bar code symbol detection circuit, indicating that either the sameor another bar code symbol resides within the scan field. If controlactivation signal A₂=1 is not being produced, then the control systemreturns to Block A, as shown. However, if this control signal is beingproduced, then at Block EE the third control module C₃ determineswhether or not timer T₃ has lapsed, indicating that time window to reada bar code symbol without redetecting the object on which it isdisposed, is closed. When this condition exists, the control systemreturns to Block A in FIG. 13A. However, if time remains on timer T₃,then at Block BB the third control module C₃ resets and restarts timerT₂ and returns to Block CC. As mentioned above, the control system mayflow through the control loop defined by Blocks BB-CC-DD-EE-BB a numberof times prior to reading a bar code within time period T₃.

When the symbol decoding module produces control activation signal A₃=1within time period T₂, the third control module C₃ determines at BlockFF whether the decoded bar code symbol is different from the previouslydecoded bar code symbol. If the decoded bar code symbol is differentthan the previously decoded bar code symbol, then the control systemreturns to Block O in FIG. 13B. If the currently decoded bar code symbolis not different than the previously decoded bar code symbol, then thethird control module C₃ determines whether timer T₃ has lapsed. If thetimer T₃ has not lapsed, then the control system returns to Block BB andreenters the control flow defined at Blocks BB through GG, attemptingonce again to detect and read a bar code symbol on the detected object.However, if at Block GG timer T₃ has lapsed, then the control systemreturns to Block A in FIG. 13A.

Having described the operation of the illustrative embodiment of theautomatic hand-supportable bar code reading device of the presentinvention, it will be helpful to describe at this juncture the variousconditions which cause state transitions to occur during its operation.In this regard, reference is made to FIG. 14 which provides a statetransition diagram for the illustrative embodiment.

As illustrated in FIG. 14, the automatic hand-supportable bar codereading device of the present invention has four basic states ofoperation namely: object detection, bar code symbol presence detection,bar code symbol reading, and symbol character data transmission/storage.The nature of each of these states has been described above in greatdetail.

Transitions between the various states are indicated by directionalarrows. Besides each set of directional arrows are transition conditionsexpressed in terms of control activation signals (e.g., A₁, A₂ and A₃,and where appropriate, state time intervals (e.g., T₁, T₂, T₃, T₄, andT₅). Conveniently, the state diagram of FIG. 14 expresses most simplythe four basic operations occurring during the control flow within thesystem control program of FIGS. 13A to 13C. Significantly, the controlactivation signals A₁, A₂ and A₃ in FIG. 14 indicate which events withinthe object detection and/or scan fields can operate to effect a statetransition within the allotted time frame(s), where prescribed.

Referring now to FIGS. 15 to 15C, the base unit of the firstillustrative embodiment of the present invention will be described. Asshown, base unit 3 is realized in the form of a scanner stand comprisingsupport frame 240 releasably connected to a base support/mounting plate241 by way of a snap fit fastening mechanism illustrated in FIGS. 15Band 15C. In the illustrative embodiment, support frame 240 is formed asan injection molded shell, in which a handle portion support structureis realized by a first support recess 243; whereas a head portionsupport structure is realized by a second support recess 245. As shownin FIG. 15, first support recess 243 is disposed above base portion 245and inclined at a first acute angle Bi with respect thereto, whilesecond support recess 245 is disposed above base portion 245 andinclined at a second acute angle B₂ with respect thereto.

As best shown in FIG. 15, first support recess 243 is formed by a firstsubstantially planar support surface 246 surrounded by the projection ofopposing side walls 247A and 247B and rear wall 247C, extending aboveplanar support surface 246 in a perpendicular fashion. The function offirst support recess 243 is to receive and support the handle portion ofhand supportable bar code reading device. Similarly, second supportrecess 245 is formed by a second substantially planar support surface248 surrounded by the projection of opposing side walls 249A and 249Band front wall surface 249C extending above planar support surface 248in a perpendicular fashion.

The function of support recess 245 is to receive and support the headportion of hand-supportable bar code reading device 2. Front wallprojection 249C is slightly lower than side wall projections 249A and249B to ensure that the transmitted IR signal from IR LED 148 is freelytransmitted through an aperture stop 250 formed in the head portion ofthe housing, whereas the reflected IR signal passes through an aperturestop 251 and is detected by IR photodiode 150 in the head portion of thehand-supportable housing. At the same time, this structural feature ofthe scanner support stand ensures that visible laser light is projectedand collected through light transmissive window 11 without obstruction,i.e., when the automatic bar code reading device is operated in itsautomatic hands-free mode, shown in FIG. 28, in particular.

In order to ensure that bar code reading device 2 is securely, yetreleasably supported within support recesses 243 and 245 and not easilyknocked out of the scanner support stand during the hands-free mode ofoperation, first and second magnetic elements 255 and 256 arepermanently mounted to the underside of planar support surfaces 246 and248, respectively, as illustrated in FIG. 15C. With this arrangement,magnetic flux of constant intensity continuously emanates from supportrecesses 243 and 245. As a result, when the handle and head portions ofthe bar code reading device are placed within support recesses 243 and245, a ferrous element 257 in handle portion 9B is magneticallyattracted to magnetic element 255, while ferrous element 258 on headportion 9A is magnetically attracted to magnetic element 256. Themagnetic force of attraction between these elements is selected so thata desired degree of force is required to lift the automatic bar codereading device out of scanner support stand, while preventing accidentaldisplacement of the device from the scanner support stand during use inthe hands-free mode of operation. Also, the magnetic flux produced fromthese magnets 255 or 256 is detected by the Hall-effect switch 115mounted within the hand-supportable bar code symbol reader 2 when it isplaced in its support stand 3, as shown in FIG. 4A, inducing thehigh-speed/low-resolution raster mode of scanner operation forsheet-reading type applications. In this mode, the bar code symbolreader can be used as a 2-D bar code sheet reader with excellentresults.

As illustrated in FIGS. 15B and 15C, base mounting plate 241 is formedas a thin planar structure having perimetrical dimensions substantiallyequal to the perimetrical dimensions of the base portion of supportframe 240. At the front and rear end portions of base plate 241, a pairof projections 259 and 260 extend perpendicularly, as shown. Theseprojections have horizontal flanges which are adapted to snap fit intohorizontal grooves formed on the interior surfaces of front and rearwalls 261 and 262, as shown in FIGS. 15A to 15C.

To facilitate mounting of base plate 241 on a vertical planar mountingsurface, a pair of spaced apart mounting holes 263A and 263B areprovided. To facilitate attachment of base plate 241 to a pivotal jointassembly 265 associated with pedestal base 266, as illustrated in FIGS.28 to 29B, a set of mounting holes (not shown) are formed in the baseplate itself. To facilitate support of base plate 241 upon a horizontalsupport surface, a set of four rubber feet (not shown) may be adhesivelyapplied to the underside corners of the base plate.

In order to perform the data packet reception, processing,retransmission, and acknowledgement functions of base unit 3 describedabove, a circuit board 270 populated with electronic circuitry isconcealed within the interior volume contained between the interiorsurface of support stand portion 245 and the upper surface of base plate241. In the illustrated embodiment, PC board 270 contains electroniccircuitry for realizing each of the functions represented by the blockshown in the system diagram of FIG. 16. As shown in FIG. 15A, flexiblecommunication and power supply cables 7 and 8 are routed throughaperture 271 formed in the lower portion of rear wall of the supportframe, as shown in FIG. 15C, and connect to the electronic circuitry onPC board 270.

In FIG. 16, the system architecture of base unit 3 is schematicallyrepresented. As shown, base unit 3 comprises a number hardware andsoftware components, namely: a power supply circuit 273; a receivingantenna element 274; an RF carrier signal receiver circuit 275 base unitidentification number storage unit 276; a data packet storage buffer277; a base unit system controller 278; a data packet frame check module279; a transmitter number identification module 280; a data packetnumber identification module 281; a symbol character data extractionmodule 282; a data format conversion module 283; a serial datatransmission circuit 284; and an acoustical acknowledgement signalgeneration circuit 285. In the illustrative embodiment, a programmedmicroprocessor and associated memory (i.e., ROM and RAM), indicated byreference numeral 286, are used to realize the base unit systemcontroller 278 and each of the above-described data processing modules277 to 283. The details of such a programming implementation are knownby those with ordinary skill in the art to which the present inventionpertains.

As shown in FIG. 16, receiving antenna element 274 is electricallycoupled to an input signal port of radio receiver circuit 275 in aconventional manner. In general, the function of radio receiver circuit275 is to receive and process the data-packet modulated carrier signaltransmitted from a remote bar code symbol reader to its mated base unit.The radio receiver circuit of the illustrative embodiment can berealized by configuring several commercially available IC chipstogether, although it is understood that there are certainly other waysin which to realize the basic functions of this circuit. As shown inFIG. 16A, receiving antenna 274 is connected to a matching filtercircuit 287 realized by using miniature inductive and capacitivecomponents. The matching filter circuit is tuned to pass a 912 MHz RFcarrier signal transmitted from the data packet transmission circuit 121of the bar code symbol reading device. The output of matching filtercircuit 287 is connected to the input of a first IC chip 288 whichconverts (i.e., translates) the frequency spectrum of the receivedmodulated carrier signal down to an intermediate frequency band, forsubsequent signal processing. In the illustrative embodiment, the firstIC chip 288 is realized using the MAF2001 IC chip from Motorola, Inc.,and provides a low noise amplifier 289, an double balanced mixer 290. Alocal oscillator 292 is needed to provide a local oscillator signal ofabout 922.7 MHZ for use in frequency down-conversion in the doublebalanced mixer 290. Typically, a matching filter 291 is commonlyrequired between local oscillator 292 and mixer 290. As shown in FIG.16A, the output of the first IC chip is provided to a band-pass filter293 tuned to about 10.7 MHZ, the intermediate frequency band of eachbase unit. The intermediate signal is then provided as input to a secondIC chip 294. In the illustrative embodiment, the second IC chip 294 isrealized using the MC13156 IC chip commercially available from Motorola,and provides inter alia an amplification circuit, a quadraturedemodulation circuit 295, a binary thresholding circuit 296, and carriersignal detection circuit 297. The function of the second IC chip isfourfold. The first function of the second IC chip is to filter andamplify the intermediate signal to produce in-phase and quadrature phasesignal components for use in digital data recovery. The second functionof the second IC chip is to recover an analog data signal at the baseband portion of the spectrum, by providing the in-phase andquadrature-phase signal components to the quadrature demodulationcircuit 295. Suitable quadrature demodulation circuitry for use inpracticing the present invention is disclosed in U.S. Pat. No. 4,979,230to Marz, which is incorporated herein by reference in its entirety. Asillustrated in FIG. 16A, the third function of the second IC chip is toconvert the analog data signal produced from quadrature demodulationcircuit 295 into a digital data signal using a binary-level thresholdingcircuit 296. The fourth function of the second IC chip is to analyze theincoming signal from the output of band-pass filter 293 in order todetect the incoming carrier signal and produce a carrier detect signalA₇ to the base unit system controller 278. In order to produce a CMOScompatible signal, the recovered digital data signal produced fromsecond IC chip 294 is amplified by a current amplification circuit 298that is operative whenever a carrier signal is detected (i.e., A₇=1). Asshown in FIG. 16, the output of current amplification circuit 298 is aserial data stream that is clocked into data packet storage buffer 277under the control of base unit system controller 278. In general, thedata packet storage buffer 277 can be realized using a commerciallyavailable Universal Asynchronous Receiver/Transmitter (UART) device. Theprimary function of data packet buffer memory 277 is to buffer bytes ofdigital data in the produced digital data stream.

In the illustrative embodiment, it necessary to provide a means withinthe base unit housing, to recharge the batteries contained within thehand-supportable housing of the portable bar code symbol reading device.Typically, DC electrical power will be available from the host computersystem 6, to which the base unit is operably connected by way offlexible cables 7 and 8. An electrical arrangement for achieving thisfunction is set forth in FIG. 16. As shown, power supply circuit 273aboard the base unit of the present invention comprises a conventionalcurrent chopper circuit 299, a high-pass electrical filter 300 inparallel therewith, and a primary inductive coil 301 in parallel withthe high-pass electrical filter. Low voltage DC electrical powerprovided from the host computer system by way of power cable 8 isprovided to direct current (DC) chopper circuit 299, which is realizedon PC board 270 using high-speed current switching circuits. Thefunction of current chopper circuit 299 is to convert the input DCvoltage to the circuit into a high-frequency triangular-type(time-varying) waveform, consisting of various harmonic signalcomponents. The function of the high-pass electrical filter is to filterout the lower frequency signal components and only pass the higherfrequency signal components to the inductive coil 301. As such, the highfrequency electrical currents permitted to flow through inductive coil301 induce a high voltage thereacross and produce time-varying magneticflux (i.e., lines of force). In accordance with well known principles ofelectrical energy transfer, the produced magnetic flux transferselectrical power from the base unit to the rechargeable battery aboardthe bar code symbol reading device, whenever the primary and secondaryinductive coils aboard the base unit and the mated device areelectromagnetically coupled by the magnetic flux. In order to maximizeenergy transfer between the base unit and its mated device duringbattery recharging operations, high permeability materials and wellknown principles of magnetic circuit design can be used to increase theamount of magnetic flux coupling the primary and secondary inductivecoils of the battery recharging circuit.

Referring to FIG. 16, the function of each of the data processingmodules of base unit 3 will now be described in detail.

Upon reception of an incoming carrier signal and the recovery of thedigital data stream therefrom, base unit system controller 278orchestrates the processing of the recovered digital data stream. Asshown in FIG. 16, the operation of data processing modules 279, 280,281, 282 and 283 are enabled by the production of enable signalsE_(PFC), E_(TID), E_(DPID), E_(DE), and E_(DFC), respectively, from thebase unit system controller.

The primary function of data packet frame check module 279 is to analyzeall of the data bytes in the received data packet, including the Startand End of Packet Fields, and determine whether a complete frame (i.e.,packet) of digital data bytes has been recovered from the incomingmodulated carrier signal. If so, then data packet frame check module 279produces activation control signal A_(PFC=)1, which is provided to thebase unit system controller, as shown in FIG. 16.

The primary function of the transmitter number identification module 280is to analyze the data bytes in the Transmitter ID Field of the receiveddata packet and determine the Transmitter ID Number preassigned to thebar code reading device that transmitted the data packet received by thebase unit. If the Transmitter ID Number of the received data packetmatches the preassigned Base Unit Identification No. stored innonvolatile memory (i.e., EPROM) 302 aboard the base unit, then thetransmitter number identification module generates control activationsignal A_(TID)=1, which is provided to the base unit system controller.

The primary function of the packet number identification module 281 isto analyze the data bytes in the Packet Number Field of the receiveddata packet and determine the Packet Number of the data packet receivedby the base unit. This module then advises the base unit systemcontroller that a different packet number was received, representing anew group (e.g., now seen) by producing an encoded signal ADPID duringthe system control process.

The primary function of the symbol character data extraction module 282is to analyze the data bytes in the Symbol Character Data Field of thereceived data packet, determine the code represented by the symbolcharacter data, and provided this symbol character data to the dataformat conversion module 283 under the control of the base unit systemcontroller during the system control process.

The primary function of the data format conversion module 283 is toconvert the format of the recovered symbol character data, into a dataformat that can be used by the host computer symbol 6 that is toultimately receive and use the symbol character data. In the bar codesymbol reading system of first illustrative embodiment, the data formatconversion is from ASCII format to RS232 format, although it isunderstood that other conversions may occur in an alternative embodimentof the present invention. Typically, the data format conversion processis carried out using a data format conversion table which contains theappropriate data structure conversions.

The primary function of the serial data transmission circuit 284 is toaccept the format-converted symbol character data from the data formatconversion module 283, and transmit the same as a serial data streamover data communication cable 7, to the data input port of the hostcomputer system 6 (e.g., cash register, data collection device,inventory computer). Preferably, an RS-232 data communication protocolis used to facilitate the data transfer process. Thus the constructionof serial data transmission circuit 284 is conventional and the detailsthereof are well within the knowledge of those with ordinary skill inthe art.

The primary function of acoustical acknowledgement signal generationcircuit 285 is to produce an acoustical acknowledgement signal SA inresponse to the successful recovery of symbol character data from atransmitted data packet. The purpose of the acoustical acknowledgementsignal is to notify the user that the transmitted data packet has beensuccessfully received by its mated base unit. In the illustrativeembodiment, the intensity of the acoustical acknowledgement signal issuch that the remotely situated user of the portable bar code symbolreader can easily hear the acoustical acknowledgement signal in anexpected work environment having an average noise floor of at leastabout 50 decibels. Preferably, the pitch of the acousticalacknowledgement signal is within the range of about 1 to about 10kilohertz, in order to exploit the sensitivity characteristics of thehuman auditory apparatus of the user. In the exemplary embodiment, thepitch is about 2.5 kilohertz. Under such conditions, the intensity ofsuch an acoustical acknowledgement signal at its point of generationwill typically need to have an output signal power of about 70 decibelsin order to be heard by the user in a working environment having anaverage noise floor of about 50 decibels and an average noise ceiling ofabout 100 decibels. Acoustical acknowledgement signals of such charactercan be produced from acoustical acknowledgement signal generationcircuit 285, shown in FIG. 285.

As shown in FIG. 16B, acoustical acknowledgement signal generationcircuit 285 comprises a number of subcomponents, namely: a decodercircuit 305; a voltage controlled oscillator (VCO) driver circuit 306; aVCO circuit 307; an output amplifier circuit 308; and a piezoelectrictype electro-acoustic transducer 303 having an output signal bandwidthin the audible range. The operation (i.e., duration) of the acousticalacknowledgment signal generation circuit 285 is controlled by base unitsystem controller 278 using enable signal E_(AA). In the illustrativeembodiment, enable signal E_(AA) is a digital word encoded to representone of a number of possible audible pitches or tones that are to begenerated upon each successful reception of a transmitted data packet ata mated base station. The function of decoder circuit 305 is to decodethe enable signal EAA produced by the base unit system controller andproduce a set of voltage signals {V₁ 1, V2, . . . , Vn} which correspondto a specified pitch sequence to be produced by electro-acoustictransducer 309. The function of VCO driver circuit 306 is tosequentially drive VCO circuit 307 with the produced set of voltages {V₁1, V2, . . . , Vn} so that VCO circuit produces over a short time period(e.g., 0.5–1.5 seconds), a set of electrical signals having frequenciesthat correspond to the specified pitch sequence to be produced from theelectro-acoustic transducer 309. The function of amplifier circuit 308is to amplify these electrical signals, whereas the function ofelectro-acoustical transducer 309 is to convert the amplified electricalsignal set into the specified pitch sequence for the user to clearlyhear in the expected operating environment. As shown in FIGS. 1 and 15A,the base housing is preferably provided with an aperture or sound port304 so as to permit the energy of the acoustical signal from transducer309 to freely emanate to the ambient environment of the user. In aparticular application, it may be desired or necessary to produceacoustical acknowledgement signal of yet greater intensity levels thatthose specified above. In such instances, electro-acoustical transducer309 may be used to excite one or more tuned resonant chamber(s) mountedwithin or formed as part of the base unit housing.

Having described the structure and general functional components of baseunit 3, it is appropriate at this juncture to now describe the overalloperation thereof with reference to the control process shown in FIGS.17 and 17A.

As illustrated at Block A in FIG. 17, radio receiving circuit 275 is theonly system component that is normally active at this stage of the baseunit system control process. All other system components are inactive(i.e., disabled), including base unit system controller 278; data packetstorage buffer 277, data packet frame check module 279, transmitternumber identification module 280, data packet number Identificationmodule 281, symbol character data extraction module 282, data formatconversion module 283, serial data transmission circuit 284, andacoustical acknowledgement signal generation circuit 285. With the radioreceiving circuit activated, the base unit is capable of receiving anymodulated carrier signal transmitted from any of the bar code symbolreading devices within the data transmission range of the base unit.

At Block B in FIG. 17, radio receiving circuit 275 determines whether ithas received a transmitted carrier signal on its receiving antennaelement 274. If it has, then the radio receiving circuit generates asystem controller activation signal A₇, which activates base unit systemcontroller 278 and signal amplifier 276 shown in FIG. 16 and 16A,respectively. Then at Block C, the base unit system controller activates(i.e., enables) data packet storage buffer 277 and data packet framecheck module 279 by producing activation control signals ESB=1 andE_(PFC)=1, respectively. At Block D, the base unit system controllerdetermines whether it has received an acknowledgement (i.e., controlactivation signal A_(PFC)=1) from the data packet frame check module,indicating that the received data packet is properly framed. If thereceived data packet is not properly framed, then the base unit returnsto Block A in order to redetect an incoming carrier signal. However, ifthe received data packet is properly framed, then at Block E the baseunit system controller enables the transmitter number identificationmodule by generating enable signal E_(TID=)1.

At Block F, the base unit system controller determines whether it hasreceived an acknowledgment (i.e., control activation signal A_(TID)=1)from the transmitter number identification module that the received datapacket contains the correct transmitter identification number (i.e., thesame number assigned to the base unit and stored in storage unit 276).If the Transmitter Identification Number contained within the receiveddata packet does not match the base unit identification number stored instorage unit 276, then the base unit system controller returns to BlockA whereupon it resumes carrier signal detection. If, however, thetransmitter packet number contained within the received data packetmatches the base unit identification number, then at Block G the baseunit system controller enables the data packet number identificationmodule 289 by generating enable signal E_(DPID)=1.

At Block H, the base unit system controller determines whether it hasreceived an acknowledgment (i.e., control activation signal A_(DPID)=1)from the data packet identification module indicating that the receiveddata packet is not a redundant data packet (i.e., from the sametransmitted data packet group). If the received data packet is aredundant data packet, then the base unit system controller returns toBlock A, whereupon carrier signal detection is resumed. If, however, thereceived data packet is not redundant, then at Block I the base unitsystem controller enables the symbol character data extraction module bygenerating enable signal E_(DE)=1. In response to the generation of thisenable signal, the symbol data extraction module reads at Block J thesymbol character data contained in the received data packet, checks thedata for statistical reliability, and then writes the extracted symbolcharacter data bytes into a storage buffer (not explicitly shown).

As indicated at Block K in FIG. 17, the base unit system controller thenenables the data format conversion module by generating enable signalE_(DFC)=1. In response to this enable signal, the data format conversionmodule converts the data format of the recovered symbol character dataand then buffers the format-converted symbol character data bytes in adata buffer (not explicitly shown). At Block L the base unit systemcontroller enables the serial data transmission circuit 284 bygenerating enable signal E_(DT)=1. In response to this enable signal,the serial data transmission circuit transmits the format-convertedsymbol character data bytes over communication cable 7 using serial datatransmission techniques well known in the art, as discussed above. Whenthe serial data transmission process is successfully completed, the baseunit system controller enables at Block M the acoustical acknowledgementsignal generation circuit 285 by producing enable signal E_(AA)=1. Inresponse to the production of this enable signal, acousticalacknowledgment signal generation circuit 285 generates a high intensityacoustical signal having characteristics of the type described above,thereby informing the user that a transmitted data packet has beenreceived and that the symbol character data packaged therein has beensuccessfully recovered and transmitted to the host computer system.Thereafter, the base unit system controller returns to the Block A, asshown.

With automatic bar code reading device positioned within scanner standportion of base unit 3 as shown in FIG. 32, the system is automaticallyinduced into its long-range hands-free mode of operation by way of themagnetic flux sensing technique disclosed in copending application Ser.No. 07/761,123. By simply moving object 435 into the object detectionfield, the bar code symbol 436 is repeatedly scanned by the visiblelaser beam scanned across the scan field. To induce the automatic barcode reading system into its short-range hands-on mode of operation, theuser simply grasps the automatic bar code reading device and lifts itout of the scanner support stand, as illustrated in FIG. 33A. Then, byplacing object 435 into the short-range portion of the object detectionfield as shown in FIG. 33B, the object is automatically detected and barcode symbol 436 scanned by the visible laser beam repeatedly scannedacross the scan field. After the bar code symbol has been successfullyread and an audible acoustical acknowledgment signal produced asherebefore described, the automatic bar code reading device can beplaced back into the scanner support stand, automatically inducing thesystem into its long-range hands-free mode of operation.

The one-way RF data packet transmission protocol described in detailabove can be modified so that the data contained in 2-D (e.g. PDF) barcode symbols can be transmitted to the base unit of the bar code symbolreader. This would involve modifying the data packet format shown inFIG. 8R by adding two data fields between start of packet field 221 andend of packet field 226, namely: a Packet Set Number Fieldrepresentative of the number assigned to each set of packets to be sentfor each 2-D bar code symbol read; and a Total Number Of Packets In SetField representative of the total number of packets to be transmitted ineach set of packets. Typically, three or more sets of packets will besent to provide sufficient redundancy in the protocol. The total numberof packets in a given set will be dependent on the actual amount of datacontained in a particular 2-D bar code symbol read, and thus can varyfrom data transmission session to data transmission session. Theprotocols used at the portable bar code symbol reader and the basestation can be readily modified so that the base unit will generate anacoustical acknowledgment signal to the operator only when all of thedata packets in a given set of packets (in a packet group) have beenreceived by the base unit without error.

Other Illustrative Embodiments of Bar Code Symbol Reading System of thePresent Invention

In general, the 2-D bar code symbol reading engine 18 described abovecan be embodied within diverse types of bar code driven systems,including hand-held bar code symbol readers, body-wearable bar codesymbol readers, fixed counter scanners, transaction terminals,reverse-vending machines, CD-juke boxes, etc. In FIGS. 18 and 19, a fewillustrative examples are shown where such laser scanning engines can beembodied. Such examples are not intended to limit the scope of thepresent invention, but simply illustrate several of the manyenvironments that the 2-D laser scanning module hereof might be embeddedin.

In FIG. 18, the laser scanning bar code reading 18 is shown embodiedwithin a hand-held bar-code symbol driven Internet-based portable dataterminal 775. As shown, the portable data terminal 775 is shownconnected to an ISP 776 by way of a radio-base station 777 and wirelesslink 778. The hand-held Internet Access Terminal 775 has an integratedGUI-based web browser program, display panel 779, touch-screen typekeypad 780, and programmed bar code symbol scanner 781 incorporating thelaser scanning engine 18 of FIG. 5A. The function of bar code symboldriven terminal 775 can be multi-fold: namely: it may be used to read abar code symbol 882 that is encoded with the URL of atransaction-enabling Web page to be accessed form a web (http) server783 by the Internet-based Transaction-Enabling System, and producesymbol character data representative thereof; it may be used to readUPC-type bar code symbols in order to access a database connected to theInternet 785 by way of a common gateway interface (CGI); it may be usedto read PDF-type bar code symbols encoded with various types ofinformation known in the art; or it may be simply used to read othertypes of bar code symbols that identify a product or article in aconventional manner.

In the illustrative embodiment, the portable data terminal 775 isrealized as a transportable computer, such as the Newton® Model 2000MessagePad from Apple Computer, Inc. of Cupertino, Calif. This device isprovided with NetHopper™ (2.0) brand Internet Access Software whichsupports the client-side of HTTP and the TCP/IP networking protocolwithin the Newton MessagePad operating system. Such software providesthe Newton MessagePad with a GUI-based HTTP (WWW) browser for WWW accessand the like. The MessagePad 775 s also equipped with a MotorolaPCMCIA-based modem card 86 having a RF transceiver for establishing awireless digital communication link with either (i) a cellular basestation, or (ii) one or more satellite-base stations connected to theInternet by way of ISP 776 in a manner well known in the globalinformation networking art.

As shown, the entire Newton MessagePad, bar code symbol engine 18 andauxiliary battery supply (not shown) are completely housed within arubberized shockproof housing 787, in order to provide ahand-supportable unitary device. Once the object (e.g., transactioncard) 788 is detected by the object detection field 15, a laser beam 431is automatically projected and swept across the bar code symbol thereonwithin the laser scan field 10.

In the illustrative embodiments above, the bar code symbol readingdevice has been either supported within the hand of the operator; upon acountertop surface or the like. It is contemplated, however, that thelaser scanning module of the present invention can be embodied within abody-wearable bar code symbol reader designed to be worn on the body ofan operator as illustrated in FIG. 19. As shown, the body-wearableInternet-based system 891 comprises: a bar code symbol scanning unit 892designed to be worn on the back of the hand, and within which the 1D/2-Dlaser scanning module of the present invention is integrated; and aremote unit 893 (i.e., body-wearable RF-based portabledata/Internet-Access terminal) designed to be worn about the forearm orforeleg of the operator by fastening thereto using flexible straps orlike fastening technology.

In the illustrative embodiment shown in FIG. 19, hand-mounted scanningunit 892 comprises: a light transmission window 894 for exit and entryof light used to scan bar code symbols; a glove 895 worn by the operatorfor releasably mounting the housing 896 to the back of his or her hand,and a laser scanning bar code symbol reader 897, as describedhereinabove with respect to the other illustrative embodiments of thepresent invention.

In the illustrative embodiment shown in FIG. 19, the remote unit 893comprises: an LCD touch-screen type panel 897; an audio-speaker 898; aRISC-based microcomputing system or platform 899 for supporting variouscomputing functions including, for example, TCP/IP, HTTP, and otherInternet protocols (e.g, E-mail, FTP, etc.) associated with the use ofan Internet browser or communicator program (e.g, Netscape Navigator orCommunicator, or MicroSoft Explorer programs) provided by the remoteunit; a telecommunication modem 8100 interfaced with the microcomputingsystem; and RF transceiver 8101 (e.g., employing DFSK or spread-spectrummodulation techniques) also interfaced with the telecommunication modemfor supporting a 2-way telecommunication protocol (e.g, PPP) known inthe art, between the microcomputing system and a remote transceiver 8102(described hereinabove) which is interfaced with an ISP connected to theInternet; a (rechargeable) battery power supply 104 aboard the remotehousing, for providing electrical power to the components therein aswell as to the bar code symbol reader 987; and a flexible cable 8105,for supporting communication between the bar code symbol reader and themicrocomputing platform, and electrical power transfer from the powersupply to the bar code symbol reader. Notably, the remote unit 893 willembody one of the Internet access methods described hereinabove. Themethod used by remote unit 893 (i.e., Internet access terminal) willdepend on the information that is encoded within the bar code symbolscanned by the bar code symbol reader thereof. Preferably, the remoteunit is worn on the forearm of the operator so that the touch-type LCDpanel 897 integrated therewith can be easily viewed during use of thebody-wearable system of the present invention. Thus, for example, whenan URL-encoded bar code symbol is read by the hand-mounted (orfinger-mounted) bar code symbol reader 892, the transaction-enabling webpage associated with the scanned bar code symbol and displayed on theLCD panel can be easily viewed by and interacted with by the operator.Also, in response to reading an URL-encoded bar code symbol (i.e.,transaction enabled thereby), the operator may be required to manuallyenter information to the Web page being displayed, using thetouch-screen display panel 897 and pen-computing software, well known inthe art. Portable data terminal 891 is also programmed to read PDF andother types of 2-D bar code symbols used in diverse applications.

In the above-described illustrative embodiments, the bar code symbolreading engine was activated using IR-based object detection circuitry.In other embodiments of the present invention, the bar code symbolreading system can be activated (i) using laser-based object detectionmechanisms as shown in FIGS. 20, 21 and 22 using bar code symbol readingengine 18′, or (ii) using manually-actuated mechanisms (such as triggerswitches, voice actuation, capacitance sensors and the like) as shown inFIGS. 23, 24 and 25 using bar code symbol reading engine 18″.

In FIG. 20, the system of FIG. 2 has been modified by removing theIR-based object detection circuitry and adding some control circuitrythat operates the laser beam in a low power, non-visible mode when thesystem is in its bar code detection state. The low-power non-visiblelaser beam can be pulsed out into the object detection field,spatially-coincident with the scan field, and detected by thephoto-receiving circuit whose sensitivity can be increased for thisembodiment of the present invention. Such modifications would result ina bar code symbol reading engine 18 having virtually all of thefunctionalities of engine 18. Thus automatic bar code symbol readingsystem 1′ would function much like automatic bar code symbol readingsystem 1.

In FIG. 21, the system of FIG. 18 has been modified by modifying barcode symbol reading engine 18 into engine 18′, as described above. Thusautomatic bar code symbol reading system 775′ would function much likeautomatic bar code symbol reading system 775.

In FIG. 22, the system of FIG. 19 has been modified by modifying barcode symbol reading engine 18 into engine 18′, as described above. Thusautomatic bar code symbol reading system 891′ would function much likeautomatic bar code symbol reading system 891.

In FIG. 23, the system of FIG. 2 has been modified by removing allautomatic object detection circuitry (e.g. IR transceiver, objectdetection circuit 107, etc.) and adding a manually-actuatable triggerswitch 900 on the housing as shown, so as to enable the operator toproduce control activation signal A₁ by pulling the trigger switch in amanner know in the art. This will signal to C₁ that an object (andpossibly a bar code symbol) is in the scan field. All other automaticcircuitry within engine 18 can be used with little or no modificationrequired. Such modifications would result in a bar code symbol readingengine 18′ having virtually all of the functionalities of engine 18.Thus automatic bar code symbol reading system 1″ would function muchlike automatic bar code symbol reading system 1, except that actuationof the trigger switch 900 is required to initiate laser scanning andsystem operation.

In FIG. 24, the system of FIG. 18 has been modified by transforming barcode symbol reading engine 18 into engine 18″, as described above.Optionally, manual trigger switch 900 can be emulated on the touch-typedisplay screen 780 using a graphical icon 900′ representative of a“start scanning/reading” button. Thus automatic bar code symbol readingsystem 775″ would function much like automatic bar code symbol readingsystem 775 except that actuation of the trigger switch 900 (or 900′) isrequired to initiate laser scanning and system operation.

In FIG. 25, the system of FIG. 19 has been modified by modifying barcode symbol reading engine 18 into engine 18″, as described above. Inthis case, the manual trigger switch 900 can be realized as a lever 900″actuatable by the operator's finger movement, or by a graphical icon900″ displayed on touch-screen 897 representative of a “startscanning/reading” button. Thus automatic bar code symbol reading systemThus automatic bar code symbol reading system 891″ would function muchlike automatic bar code symbol reading system 891.

Having described the preferred embodiments of the present invention,several modifications come to mind.

For example, while the illustrative embodiments have disclosed the useof base sheet material comprising copper laminated onto Kapton™ plasticmaterial during the fabrication of the scanning element hereof, it isunderstood that other types of resilient plastic materials, includingMylar™ plastic material, can be used to manufacture the scanning elementwith suitable results.

The automatic bar code reading system of the present invention iscapable of performing a wide variety of complex decision-makingoperations in real-time, endowing the system with a level ofintelligence hitherto unattained in the bar code symbol reading art.Within the spirit of the present invention, additional decision-makingoperations may be provided to further enhance the capabilities of thesystem.

It is understood that the laser scanning modules, engines and systems ofthe illustrative embodiments may be modified in a variety of ways whichwill become readily apparent to those skilled in the art of having thebenefit of the novel teachings disclosed herein. All such modificationsand variations of the illustrative embodiments thereof shall be deemedto be within the scope and spirit of the present invention as defined bythe Claims to Invention appended hereto.

1. A system capable of producing a raster-type laser scanning patternfor scanning 2-D bar code symbols along x and y axis scanningdirections, said system comprising: a housing; a light source disposedin said housing, for producing a light beam having cross-sectionalcharacteristics suitable for scanning a 2-D bar code symbol bar codesymbol along x and y axis scanning directions; a first light beamscanning mechanism, disposed in said housing and responsive to a firstcontrol signal, for scanning said light beam along said x axis scanningdirection using a first scanning element, wherein said first light beamscanning mechanism includes a first electromagnetically driven coil fordriving said first scanning element; a second light beam scanningmechanism, disposed in said housing and responsive to a second controlsignal, for scanning said light beam along said y axis scanningdirection orthogonal to said x axis scanning direction using a secondscanning element, wherein said second light beam scanning mechanismincludes a second electromagnetically driven coil for driving saidsecond scanning element; light collecting means disposed in saidhousing, for collecting light reflected off a bar code symbol scanned bysaid scanning pattern; light detecting means disposed in said housing,for detecting said collected light and producing scan data indicative ofthe intensity of said detected light; and electronic scanning mechanismcontrol circuitry, disposed in said housing, for electricallycontrolling the operation of said first and second scanning elements soas to produce a raster-type scanning pattern for scanning said 2-D barcode symbol along x and y axis scanning directions; wherein saidelectronic scanning mechanism control circuitry includes (i) a push-pulltype drive circuit for producing an x-axis drive voltage signal havingperiodic characteristics, for driving said first scanning element alongsaid x axis direction, and (ii) an electronically-controlledpotentiometer for producing a y-axis drive voltage signal periodicallyincrementing and decrementing in small quantized voltage level steps, inresponse to a control signal generated independently from said x-axisdrive voltage signal, for driving said second scanning element alongsaid y axis direction.
 2. The system of claim 1, wherein said electronicscanning mechanism control circuitry electrically controls said firstand second scanning elements in a synchronous manner so that saidraster-type scanning pattern as a whole is substantially free ofmovement relative to said housing.
 3. The system of claim 1, whereinsaid electronic scanning mechanism control circuitry electricallycontrols said first and second scanning elements in an asynchronousmanner so that said raster-type scanning pattern as a whole moves backand forth along relative to said housing so as to improve the scanningof said 2-D bar code symbol when supporting said housing within the handof an operator.
 4. The system of claim 1, wherein said light beam is alaser beam.
 5. The system of claim 1, wherein said housing ishand-supportable.
 6. The system of claim 1, wherein said housing isbody-wearable.
 7. The system of claim 1, said scanning pattern is a 1Dscanning pattern.
 8. The system of claim 1, wherein said electronicscanning mechanism control circuitry comprises means for generating aplurality of y-axis drive voltage signals, each for driving said secondscanning element at a different scan rate.
 9. The system of claim 1,wherein said scanning element comprises a first scanning elementcomprises a first mechanically-damped scanning element supported at oneend from a first fixed anchoring structure, and driven in anoff-resonant manner by said first electromagnetically driven coil; andwherein second scanning element comprises a second mechanically-dampedscanning element supported at one end from a second fixed anchoringstructure, and driving in an off-resonant manner said secondelectromagnetically driven coil.
 10. The system of claim 9, wherein saidfirst fixed anchoring structure and said second fixed anchoringstructure are provided on a common support platform, in close proximitywith each other.
 11. The system of claim 10, wherein said common supportplatform comprises an optical bench.
 12. The system of claim 1, whereinsaid housing is a miniature enclosure that can be supported on the handof an operator.